如何在 Windows 中打印正在运行的进程列表

如何在 Windows 中打印正在运行的进程列表

我应该使用什么工具才能轻松打印出 Windows 中当前正在运行的所有进程的列表?

或者也许我可以使用一些命令。有什么建议吗?

答案1

tasklist命令将输出所有正在运行的进程的列表。您可以将其重定向到文本文件,tasklist > filename.txt然后使用记事本或任何其他处理文本文件的程序打印该文件。

答案2

在 PowerShell 中,您可以使用:get-processget-wmiobject WIN32_PROCESS

好的,但是 PowerShell 可以显示更多详细信息吗? 比 CMD 任务列表还多吗?

  • get-process | format-table -property * -autosize
  • gps | ft * -auto (相同命令,但较短版本)
  • get-wmiobject WIN32_PROCESS | format-table -property * -autosize
  • gwmi WIN32_PROCESS | ft * -auto (相同命令,但较短版本)

呃,太详细了。我可以选择我需要的列吗?

  • gps | ft name,ID,sessionID,basepriority,priorityClass,path -auto
  • gwmi WIN32_PROCESS | ft name,processID,priority,CommandLine -auto

啊,好多了。但有些列被截断了。我可以通过保存到文件来避免这种情况,对吗?

  • gps | ft * -auto | Out-File D:\process-list.txt -Width 4096
  • gwmi WIN32_PROCESS | ft * -auto | Out-File D:\process-list.txt -Width 4096

太棒了。直接打印怎么样?

  • gps | ft * -auto | Out-Printer
  • gwmi WIN32_PROCESS | ft * -auto | Out-Printer

我也可以将它们导出为 CSV 吗?

  • gps | select * | Export-Csv D:\process-list.csv
  • gwmi WIN32_PROCESS | select * | Export-Csv D:\process-list.csv

哦,太酷了。我可以按内存或 CPU 使用率对输出进行排序吗?

gwmi WIN32_PROCESS | Sort ws -desc | ft name, @{Name="Mem Usage (KB)";Expression={[math]::round($_.ws / 1kb)}} -auto
gwmi Win32_PerfFormattedData_PerfProc_Process | sort PercentProcessorTime -desc| ft name, PercentProcessorTime -auto

所有命令的完整解释SS64.com以及一些示例和可用的别名。

答案3

电源外壳

Get-Process | Out-File d:\processes.txt

相关内容