vbs实现的tasklist效果代码
ThisshortscriptusesWMItodisplaythesameinformationthaninthetool"tasklist",butdumpingtheresultontheconsole.Itcandumpremotetasksrunningonanothercomputer,
这个简短的脚本使用wmi显示与工具“tasklist”中相同的信息,但只有在命令行下输出结果。它也可以在另一台计算机上查看远程任务,
文件名:tasklist.vbs
要求:无
作者:Jean-LucAntoine
提交日期:2005年7月14日
类别:4K
核心代码
Optionexplicit Ifright(Ucase(WScript.FullName),11)="WSCRIPT.EXE"Then wscript.echo"Youshouldrunthisscriptfromthecommandline(cmd)"&vbCrLf&"cscript"&wscript.ScriptFullName WScript.Quit EndIf dimstrComputer,objWMIService,colProcesses,objProcess,ProcessTime,strCreationDate,user,Domain,strOwner,h,m,s,chaine strComputer="." SetobjWMIService=GetObject("winmgmts:"&"{impersonationLevel=impersonate}!\\"&strComputer&"\root\cimv2") SetcolProcesses=objWMIService.ExecQuery("Select*fromWin32_Process")'whereName='IEXPLORE.EXE' Chaine="Process|CreationDateTime|Handles|Threads|Owner|Priority|MemoryUsage|MaxMemUsage|MemRequired|MaxMemRequi|Swap|MaxSwap|CPUtime|PID|PFaults|Path"&vbCrLf ForEachobjProcessincolProcesses IfobjProcess.GetOwner(User,Domain)=0Then strOwner=Domain&"\"&User Else strOwner="Unknown" EndIf 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) IfstrCreationDate="//::"ThenstrCreationDate=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.echochaine
代码运行方法,将上面的代码为tasklist.vbs
在cmd下cscripttasklist.vbs即可,也可以在cmd下cscripttasklist.vbs>list.txt直接将结果保存为list.txt查看也比较容易
好了,代码到此结束