2
這裏是行不通
>dir IIS:\AppPools\ | % { dir IIS:\AppPools\$_.Name\WorkerProcesses }
更多信息
我想使用Powershell來獲取每個應用程序池的PID。我知道我可以使用WMI來獲取如下命令的信息,但我正在嘗試使用Powershell的Web管理模塊。
WMI方法(工作樣本)
Get-WmiObject -NameSpace 'root\WebAdministration' -class 'WorkerProcess' -ComputerName 'host' | select AppPoolName, ProcessId | ft -a
AppPoolName ProcessId
----------- ---------
MSExchangePowerShellAppPool 5432
MSExchangeServicesAppPool 3604
MSExchangeOWAAppPool 7056
MSExchangeAutodiscoverAppPool 6012
DefaultAppPool 3288
MSExchangeSyncAppPool 2944
Powershell的方法(不工作樣本..幫助!)
如何將二者結合起來的輸出命令(也許作爲一行)也給我每個應用程序池的PID?
[PS] C:\Windows\system32>import-module WebAdministration
[PS] C:\Windows\system32>dir IIS:\AppPools
Name State Applications
---- ----- ------------
Classic .NET AppPool Started
DefaultAppPool Started Default Web Site
/Rpc
/RpcWithCert
/ArchiveProxy
MSExchangeAutodiscoverAp Started /Autodiscover
pPool /Autodiscover/bin
/Autodiscover/help
MSExchangeECPAppPool Started /ecp
MSExchangeOWAAppPool Started /owa
/owa/oma
/ArchiveProxyOwa
MSExchangeOWACalendarApp Started /owa/Calendar
Pool
MSExchangePowerShellAppP Started /PowerShell
ool
MSExchangeServicesAppPoo Started /EWS
l /EWS/bin
MSExchangeSyncAppPool Stopped /Microsoft-Server-ActiveSync
第二個查詢我想結合是這樣的:
[PS] C:\Windows\system32>dir IIS:\AppPools\DefaultAppPool\WorkerProcesses | fl
processId : 3904
Handles : 89516
state : Running
StartTime : 2/19/2013 10:34:57 PM
嘗試DIR IIS:\ AppPools \ |選擇 - 展開名稱| %{dir IIS:\ AppPools \ $ _ \ WorkerProcesses} – 2013-02-21 15:05:26
@Kayasax這是可行的!如果你張貼作爲答案,我會給你+25代表 – LamonteCristo 2013-02-21 15:42:54