
我想刪除以“Adobe Acrobat”開頭的排程任務,例如“Adobe Acrobat 123”、“Adobe Acrobat 456”、“Adobe Acrobat 789”
schtasks /Delete /TN Adobe* /F
此命令無法找到任何任務,因為它實際上是在搜尋任務名稱“Adobe*”
for /f %%x in ('schtasks /query ^| findstr Adobe') do schtasks /Delete /TN %%x /F
這僅適用於不含空格的任務名稱,例如,僅尋找「AdobeAcorbat123」的任務名稱
如何刪除所有以「Adobe」開頭且包含空格的排程任務?
答案1
試試這個:
for /f "tokens=1*" %%a in ('schtasks /query /fo list ^| findstr /r "TaskName.*Adobe"') do schtasks /delete /tn "%%b" /f
這查找字串部分使用正規表示式(正規表示式)從輸出中僅提取包含字串“TaskName”和“Adobe”的行計劃任務。然後將其標記為for /f
(請參閱for /?
更多資訊)和包含任務完整路徑的第二個標記(包括空格) 被提取並傳遞給另一個計劃任務刪除所述任務的命令。