常用cmd命令——tasklist,taskkill,shutdown,at

一,tasklist :
输入:tasklist /?   (回车)
TASKLIST [/S system [/U username [/P [password]]]]
[/M [module] | /SVC | /V] [/FI filter] [/FO format] [/NH]

描述:
这个命令行工具显示应用程序和本地
或远程系统上运行的相关任务/进程的
列表。

参数列表:
/S     system           指定连接到的远程系统。

/U     [domain\]user    指定应该在哪个用户上下文执行这个命令。

/P     [password]       为提供的用户上下文指定密码。如果忽略,提示输入。

/M     [module]         列出所有其中符合指定模式名的 DLL 模块的所有任务。如果没有指定模块名,则显示每个任务加载的所有模块。

/SVC                    显示每个进程中的服务。

/V                      指定要显示详述 信息。

/FI    filter           显示一系列符合筛选器指定的标准的任务。

/FO    format           指定输出格式。有效值: "TABLE"、"LIST"、"CSV"。

/NH                     指定栏标头不应该在 输出中显示。只对 "TABLE" 和 "CSV" 格式有效。

/?                      显示帮助/用法。


筛选器:
筛选器名                           有效操作符              有效值
-----------       ---------------         --------------
STATUS            eq, ne                      正在运行 | 没有响应
IMAGENAME         eq, ne                      图像名
PID                                    eq, ne, gt, lt, ge, le PID 值
SESSION           eq, ne, gt, lt, ge, le      会话编号
SESSIONNAME      eq, ne                   会话名
CPUTIME           eq, ne, gt, lt, ge, le      CPU 时间,格式为
hh:mm:ss。
hh - 时,
mm - 分,ss - 秒
MEMUSAGE      eq, ne, gt, lt, ge, le    内存使用量(KB)
USERNAME         eq, ne                      用户名,格式为 [domain\]user

SERVICES        eq, ne                     服务名
WINDOWTITLE       eq, ne                     窗口标题
MODULES           eq, ne                             DLL 名

例如:
TASKLIST
TASKLIST /M
TASKLIST /V
TASKLIST /SVC
TASKLIST /M wbem*
TASKLIST /S system /FO LIST
TASKLIST /S system /U domain\username /FO CSV /NH
TASKLIST /S system /U username /P password /FO TABLE /NH
TASKLIST /FI "USERNAME ne NT AUTHORITY\SYSTEM" /FI "STATUS eq running"

1,查看本机进程: tasklist (回车)
默认显示:【图像名】,【 PID】,【 会话名】 ,【 会话#】 ,【 内存使用】

2.查看远程系统的进程
在命令提示符下输入“Tasklist /s IP地址 /u 用户名 /p 密码”
注意:使用Tasklist命令查看远程系统的进程时,需要远程机器的RPC服务的支持,否则,该命令不能正常使用。

3.查看系统进程提供的服务
Tasklist命令不但可以查看系统进程,而且还可以查看每个进程提供的服务。如查看本机进程SVCHOST.EXE提供的服务,在命令提示符下输入 “Tasklist /svc”命令即可(图3)。你会惊奇地发现,有4个SVCHOST.EXE进程,而总共有二十几项服务使用这个进程。
对于远程系统来说,查看系统服务也很简单,使用“Tasklist /s IP地址 /u 用户名 /p 密码 /svc”命令,就可以查看远程系统的进程所提供的服务。

  4.查看调用DLL模块文件的进程列表
要查看本地系统中哪些进程调用了shell32.dll模块文件,只需在命令提示符下输入“Tasklist /m shell32.dll”即可显示这些进程的列表。

  5.使用筛选器查找指定的进程
在命令提示符下输入“TASKLIST /FI "USERNAME ne NT AUTHORITY\SYSTEM" /FI "STATUS eq running”,就可以列出系统中正在运行的非SYSTEM状态的所有进程。其中“/FI”为筛选器参数,“ne”和“eq”为关系运算符“不相等”和 “相等”。


二,taskkill
输入:taskkill /? (回车)
TASKKILL [/S system [/U username [/P [password]]]]
{ [/FI filter] [/PID processid | /IM imagename] } [/F] [/T]

描述:
这个命令行工具可用来结束至少一个进程。
可以根据进程 id 或图像名来结束进程。

参数列表:
/S    system           指定要连接到的远程系统。

/U    [domain\]user    指定应该在哪个用户上下文
执行这个命令。

/P    [password]       为提供的用户上下文指定
密码。如果忽略,提示输入。

/F                     指定要强行终止
进程。

/FI   filter           指定筛选进或筛选出查询的
的任务。

/PID process id       指定要终止的进程的
PID。

/IM   image name       指定要终止的进程的
图像名。通配符 '*'
可用来指定所有图像名。

/T                     Tree kill: 终止指定的进程
和任何由此启动的子进程。

/?                     显示帮助/用法。

筛选器:
筛选器名        有效运算符               有效值
----------- ---------------             --------------
STATUS          eq, ne                  运行 | 没有响应
IMAGENAME   eq, ne                    图像名
PID             eq, ne, gt, lt, ge, le   PID 值
SESSION         eq, ne, gt, lt, ge, le   会话编号
CPUTIME         eq, ne, gt, lt, ge, le CPU 时间,格式为
hh:mm:ss。
hh - 时,
mm - 钟,ss - 秒
MEMUSAGE     eq, ne, gt, lt, ge, le 内存使用,单位为 KB
USERNAME       eq, ne                   用户名,格式为[domain\]user
MODULES         eq, ne                 DLL 名
SERVICES          eq, ne                     服务名
WINDOWTITLE      eq, ne                  窗口标题

注意: 只有带有筛选器的情况下,才能跟 /IM 切换使用通配符 '*'。

注意: 远程进程总是要强行终止,
不管是否指定了 /F 选项。

例如:
TASKKILL /S system /F /IM notepad.exe /T
TASKKILL /PID 1230 /PID 1241 /PID 1253 /T
TASKKILL /F /IM notepad.exe /IM mspaint.exe
TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
TASKKILL /F /FI "USERNAME eq NT AUTHORITY\SYSTEM" /IM notepad.exe
TASKKILL /S system /U domain\username /FI "USERNAME ne NT*" /IM *
TASKKILL /S system /U username /P password /FI "IMAGENAME eq note*"

taskkill命令,顾名思义,它是用来杀死进程的。如要杀死本机的“notepad.exe”进程,首先使用Tasklist查找它的PID,系统显示“notepad.exe”进程的PID值为“3472“,然后输入taskkill       /pid 3472或者输入 taskkill       /IM       notepad.exe即可,其中“ /pid ”后面跟要终止进程的PID值,“/IM”后面为进程的图像名。


三,shutdown :
用法: shutdown [-i | -l | -s | -r | -a] [-f] [-m \\computername] [-t xx] [-c "co
mment"] [-d up:xx:yy]

没有参数                显示此消息(与 ? 相同)
-i                      显示 GUI 界面,必须是第一个选项
-l                      注销(不能与选项 -m 一起使用)
-s                      关闭此计算机
-r                      关闭并重启动此计算机
-a                      放弃系统关机
-m \\computername       远程计算机关机/重启动/放弃
-t xx                   设置关闭的超时为 xx 秒
-c "comment"            关闭注释(最大 127 个字符)
-f                      强制运行的应用程序关闭而没有警告
-d [u][p]:xx:yy         关闭原因代码
u 是用户代码
p 是一个计划的关闭代码
xx 是一个主要原因代码(小于 256 的正整数)
yy 是一个次要原因代码(小于 65536 的正整数)

1,倒计时关机(默认60秒):例如设2分钟后关机则
shutdown /s /t 120      (回车)

2,如果想有提示信息,可以
shutdown   /c "你的提示信息"

3,想设定时关机,可以配合at命令,在下面再说

四,at:
输入:at /?    (回车)
AT 命令安排在特定日期和时间运行命令和程序。
要使用 AT 命令,计划服务必须已在运行中。

AT [\\computername] [ [id] [/DELETE] | /DELETE [/YES]]
AT [\\computername] time [/INTERACTIVE]
[ /EVERY:date[,...] | /NEXT:date[,...]] "command"

\\computername       指定远程计算机。 如果省略这个参数,
会计划在本地计算机上运行命令。
id                   指定给已计划命令的识别号。
/delete              删除某个已计划的命令。如果省略 id, 计算机上所有已计划的命令都会被删除。
/yes                 不需要进一步确认时,跟删除所有作业 的命令一起使用。
time                 指定运行命令的时间。
/interactive         允许作业在运行时,与当时登录的用户桌面进行交互。
/every:date[,...]    每个月或每个星期在指定的日期运行命令。如果省略日期,则默认为在每月的本日运行。
/next:date[,...]     指定在下一个指定日期(如,下周四)运行命令。如果省略日期,则默认为在每月的本日运行。
"command"            准备运行的 Windows NT 命令或批处理程序。

1,现在知道怎样设定时关机了吧?例如设早上十点关机,等待确认时间为3秒(设晚上十二点时,记得是00:00而不是24:00),则为
at 10:00 shutdown /s /t 3               (回车)

2,如果想取消自动关机呢?可以这样做:
(1),输入:      at    (直接回车,就可以查看到你想删除的是那个作业的状态ID和将来要运行的命令了)
(2),输入:    at id /delete (id为你想要删除的id号,回车后,再用at来查看作业还在不在吧。)
posted @ 2009-02-06 12:29  Earl_86  阅读(5962)  评论(0编辑  收藏  举报