任务列表csv脚本

时间:2018-10-02 22:10:50

标签: windows batch-file tasklist

我正在尝试创建一个日志文件,其中包含Windows桌面上的进程和内存消耗。 我是脚本编程的新手,我真的很难完成此任务。 我发现命令任务列表几乎返回了我需要的所有信息。但是我想制作一个脚本,runs tasklist /fo csv >> c:\processes.csv 每5分钟...我的主要问题是,如何在csv输出文件上执行命令时在日期和时间中添加一列。

默认的csv文件为:

“图像名称”,“ PID”,“会话名称”,“会话编号”,“记忆使用情况”

我想要

“图像名称”,“ PID”,“会话名称”,“会话#”,“ Mem用法”,“日期时间”

我找不到自定义任务列表/ fo csv上的列的方法。

有人可以帮助我吗?抱歉英语不好...这不是我的主要语言。

2 个答案:

答案 0 :(得分:1)

带有FOR选项的/F命令将允许您捕获命令的输出。然后,您可以将日期和时间添加到输出的每一行。

FOR /F "delims=" %%G IN ('tasklist /fo csv') DO ECHO %date% %time%,%%G>>process.csv

答案 1 :(得分:1)

使用for /f循环来处理命令的输出,只需添加所需的字符串即可。

(for /f "delims=" %%a in ('tasklist /fo csv') do echo %%a, %date% %time%)>>c:\processes.csv

要全部执行五分钟,请像这样循环:

:loop
(for /f "delims=" %%a in ('tasklist /fo csv') do echo %%a, %date%)>>c:\processes.csv
timeout 300
goto :loop

或更好的方法(如果要在后台全天运行),将其添加为每五分钟运行一次的计划任务(当然没有循环)。