This short script uses WMI to display the same information than in the tool “tasklist“, but dumping the result on the console. It can dump remote tasks running on another computer,
这个简短的脚本使用wmi显示与工具“tasklist”中相同的信息,但只有在命令行下输出结果。它也可以在另一台计算机上查看远程任务,
文件名:tasklist.vbs
要求:无
作者:Jean-Luc Antoine
提交日期:2005年7月14日
类别:4K
Option explicit
If right(Ucase(WScript.FullName),11)="WSCRIPT.EXE" Then
wscript.echo "You should run this script from the command line (cmd)" & vbCrLf & "cscript " & wscript.ScriptFullName
WScript.Quit
End If
dim strComputer,objWMIService,colProcesses,objProcess,ProcessTime,strCreationDate,user,Domain,strOwner,h,m,s,chaine
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcesses = objWMIService.ExecQuery ("Select * from Win32_Process") ' where Name='IEXPLORE.EXE'
Chaine="Process |Creation Date Time |Handles|Threads|Owner |Priority|MemoryUsage|MaxMemUsage|MemRequired|MaxMemRequi| Swap| Max Swap|CPU time|PID |PFaults|Path" & vbCrLf
For Each objProcess in colProcesses
If objProcess.GetOwner ( User, Domain ) = 0 Then
strOwner= Domain & "\" & User
Else
strOwner="Unknown"
End If
ProcessTime=(CSng(objProcess.KernelModeTime) + CSng(objProcess.UserModeTime)) / 10000000
h=right("0" & fix(ProcessTime/60/60),2)
ProcessTime=ProcessTime-h*60*60
m=right("0" & fix(ProcessTime/60),2)
s=Right("0" & round(ProcessTime-m*60),2)
strCreationDate=Mid(objProcess.CreationDate,7,2) & "/" & Mid(objProcess.CreationDate,5,2) & "/" & Left(objProcess.CreationDate,4) & " " & Mid(objProcess.CreationDate,9,2) & ":" & Mid(objProcess.CreationDate,11,2) & ":" & Mid(objProcess.CreationDate,13,2)
If strCreationDate="// ::" Then strCreationDate=Space(19)
Chaine=Chaine & Left(objProcess.Name & space(8),12) & "|" _
& strCreationDate & "|" & Right(Space(6) & objProcess.HandleCount,7) & "|" _
& Right(Space(6) & objProcess.ThreadCount,7) & "|" _
& Left(strOwner & space(14),19) & "|" _
& Left(objProcess.Priority & Space(7),8) & "|" _
& Right(Space(10) & objProcess.PageFileUsage ,11) & "|" _
& Right(Space(10) & objProcess.PeakPageFileUsage ,11) & "|" _
& Right(Space(8) & objProcess.WorkingSetSize ,11) & "|" _
& Right(Space(8) & objProcess.PeakWorkingSetSize ,11) & "|" _
& Right(Space(10) & objProcess.VirtualSize ,11) & "|" _
& Right(Space(10) & objProcess.PeakVirtualSize ,11) & "|" _
& h & ":" & m & ":" & s & "|" _
& Left(objProcess.ProcessID & space(3),4) & "|" _
& Right(Space(6) & objProcess.PageFaults ,7) & "|" & objProcess.ExecutablePath
Chaine=Chaine & vbCrLf
Next
wscript.echo chaine
在cmd下 cscript tasklist.vbs 即可,也可以在cmd下 cscript tasklist.vbs >list.txt直接将结果保存为list.txt查看也比较容易
好了,代码到此结束
您可能感兴趣的文章:
- dos进程查看与停止命令分享(tasklist,taskkill)
- SC tasklist与ntsd命令使用
- cmd Tasklist与Tskill管理Windows系统进程
- 利用tasklist与taskkill实现AV终结者新变种(随机7位字母病毒)的删除方法
声明:本站(华域联盟www.cnhackhy.com)所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)