Какой инструмент я должен использовать, чтобы я мог легко распечатать список со всеми процессами, которые в настоящее время работают в Windows?
Или, может быть, есть некоторые команды, которые я мог бы использовать. Какие-либо предложения?
В PowerShell вы можете использовать: get-process
или get-wmiobject WIN32_PROCESS
.
Хорошо, но может ли PowerShell показать больше деталей? Больше чем CMD Tasklist?
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
О, это круто. Могу ли я отсортировать вывод по памяти или использованию процессора?
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 вместе с некоторыми примерами и доступными псевдонимами.
Команда tasklist
выведет список всех запущенных процессов. Вы можете перенаправить его в текстовый файл с помощью tasklist > filename.txt
а затем распечатать этот файл с помощью Блокнота или любой другой программы, которая обрабатывает текстовые файлы.