获取计划任务的信息

时间:2016-01-25 14:34:41

标签: batch-file

我之前发过这个问题: Check real path or content of job/task

这可能有点令人困惑,所以我在改写:我想要的是系统上任务的内容,名称,描述等。

例如,我想知道哪些任务包含或执行iexplore.exe。

我使用了以下命令:

schtasks /query /fo LIST /v | findstr /i /s "iexplore.exe"

这将给我输出:

  

要运行的任务:C:\ Program Files \ Internet Explorer \ iexplore.exe

但这是不充分的信息。理想情况下,我想列出: 名称,位置,描述

如果我使用:

schtasks /query /v | findstr /i /s "iexplore.exe"

我得到了一大堆输出,未分类且并非全部相关(我不想知道电池模式等)。

有没有办法完成我想要的输出(例如:)

  

要运行的任务:C:\ Program Files \ Internet Explorer \ iexplore.exe

     

名称:管理

     

描述:打开管理界面

     

位置:%userprofile%\ desktop \ Management.html

这是否可以通过schtasks实现?如果没有,我可以以某种方式使用 dir 命令,以列表格式或至少干净的输出如上所述吗?

我希望将输出通过管道传输到日志或文本文件中(因为我有一些脚本,我可以把它放在那里)。

谢谢!

1 个答案:

答案 0 :(得分:1)

已编辑现在它处理“iexplore.exe”的每次出现

@echo off
setlocal enabledelayedexpansion
set "task="
for /f "tokens=2 delims=," %%a in ('schtasks /query /fo csv /v ^| find /i "iexplore.exe"') do (
  set "task=%%~a"
  schtasks /query /fo list /v /tn "!task!"|findstr /c:"Aufgabenname" /c:"Kommentar" /c:"Starten in" /c:"Auszufhrende Aufgabe"
)

注意:名称取决于Windows安装的语言。我的大多数标准都不存在于我的窗口,因此我使用了我的本地名称。请根据您的需求进行调整。