
Quero excluir tarefas agendadas que começam com "Adobe Acrobat", por exemplo, "Adobe Acrobat 123","Adobe Acrobat 456","Adobe Acrobat 789"
schtasks /Delete /TN Adobe* /F
Este comando não consegue encontrar nenhuma tarefa porque está literalmente procurando pelo nome da tarefa "Adobe*"
for /f %%x in ('schtasks /query ^| findstr Adobe') do schtasks /Delete /TN %%x /F
Isso funciona apenas para nomes de tarefas sem espaço, por exemplo, só encontra o nome da tarefa se for "AdobeAcorbat123"
Como posso excluir todos os nomes de tarefas agendadas começando com “Adobe” e contendo espaço?
Responder1
Em vez disso, tente isto:
for /f "tokens=1*" %%a in ('schtasks /query /fo list ^| findstr /r "TaskName.*Adobe"') do schtasks /delete /tn "%%b" /f
Oencontrarstrparte usa regex (expressões regulares) para extrair apenas as linhas contendo as strings "TaskName" e "Adobe" da saída detarefas. Isso é então tokenizado por for /f
(veja for /?
para mais) e o segundo token contém o caminho completo para a tarefa (incluindo espaços) é extraído e passado para outrotarefascomando que exclui a referida tarefa.