РЕДАКТИРОВАТЬ OP: Мой вопрос предполагал, что PowerShell был лучшим инструментом для этой работы. Есть более простой способ достижения моей цели. Друг только что рассказал мне о: iisapp.vbs . Он отображает именно ту информацию, которая мне нужна, без необходимости PowerShell.
Я работаю с десятками веб-сайтов ASP.NET, работающих локально, и когда я хочу отладить определенный веб-сайт с именем, например, foo.site.com, я выполняю следующие шаги:
Запустите Process Explorer (из SysInternals) и найдите, какой w3wp.exe был запущен с foo.site.com в его командной строке.
Обратите внимание на идентификатор процесса (PID) этого процесса w3wp.exe.
В Visual Studio присоедините к этому идентификатору процесса.
Есть ли способ написать сценарий PowerShell, который будет печатать аргументы PID и командной строки каждого процесса w3wp.exe, запущенного на моем компьютере?
Когда я запускаю get-process w3wp, я получаю:
> get-process w3wp
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
688 28 44060 64576 226 2.75 196 w3wp
750 26 48328 68936 225 3.38 1640 w3wp
989 36 54596 83844 246 4.92 1660 w3wp
921 33 54344 80576 270 4.24 5624 w3wp
773 27 48808 72448 244 2.75 5992 w3wp
Нет данных командной строки: (
Спасибо!
EDIT: я ищу аргументы командной строки, которые были переданы в w3wp.