激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - PowerShell - Windows Powershell ForEach-Object 循環

Windows Powershell ForEach-Object 循環

2020-06-24 10:20Powershell教程網 PowerShell

Powershell管道就像流水線,對于數據的處理是一個環節接著一個環節,如果你想在某一環節對流進來的數據逐個細致化的處理,可是使用ForEach-Object,$_ 代表當前的數據。

對管道對象逐個處理

如果使用Get-WmiObject 獲取系統中的服務,為了排版可能會也會使用Format-Table對結果進行表格排版。

 

復制代碼 代碼如下:


PS C:Powershell> Get-WmiObject Win32_Service | Format-Table status,DisplayName
-AutoSize

 

status DisplayName
------ -----------
OK     Adobe Acrobat Update Service
OK     Application Experience
OK     Application Layer Gateway Service
OK     Application Host Helper Service
OK     Application Identity
OK     Application Information
OK     Application Management
OK     ASP.NET State Service

 

但是如果想對每個服務進行更定制化的處理可是使用ForEach-Object

 

復制代碼 代碼如下:

PS C:Powershell> Get-WmiObject Win32_Service | ForEach-Object {"Name:"+ $_.Disp
layName, ", Is ProcessId more than 100:" + ($_.ProcessId -gt 100)}
Name:Adobe Acrobat Update Service , Is ProcessId more than 100:True
Name:Application Experience , Is ProcessId more than 100:False
Name:Application Layer Gateway Service , Is ProcessId more than 100:False
Name:Application Host Helper Service , Is ProcessId more than 100:True
Name:Application Identity , Is ProcessId more than 100:True
Name:Application Information , Is ProcessId more than 100:True
Name:Application Management , Is ProcessId more than 100:False
Name:ASP.NET State Service , Is ProcessId more than 100:False

 

結合條件處理

ForEach-Object的處理可以包含任意Powershell腳本,當然也包括條件語句

 

復制代碼 代碼如下:

Get-WmiObject Win32_Service | ForEach-Object {
    if ($_.ProcessId -gt 3000)
    { "{0}({1})" -f $_.DisplayName,$_.ProcessID}
}
Windows Presentation Foundation Font Cache 3.0.0.0(5408)
Microsoft Network Inspection(5260)
BranchCache(4112)
Windows Modules Installer(7656)

 

調用方法

在ForEach-Object中,$_代表當前對象,當然也允許通過$_,調用該對象支持的方法。
下面的例子殺死所有IE瀏覽器進程:

 

復制代碼 代碼如下:


PS C:Powershell> Get-Process iexplore

 

Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
-------  ------    -----      ----- -----   ------     -- -----------
    883      29    14728      22432   181    34.26   4300 iexplore
    771      28    55552     129152   425     8.56   5732 iexplore
   1216      51   104324     143916   539   572.41   5912 iexplore
    801      25    49200      25372   285     5.99   6252 iexplore
    691      25    57564      95796   333     8.08   6388 iexplore
   1256      38    85848     127012   379    20.37   7856 iexplore

PS C:Powershell> Get-Process iexplore | ForEach-Object {$_.kill()}
PS C:Powershell> Get-Process iexplore
Get-Process : 找不到名為“iexplore”的進程。請驗證該進程名稱,然后再次調用 cmdlet。
所在位置 行:1 字符: 12
+ Get-Process <<<< iexplore
+ CategoryInfo : ObjectNotFound: (iexplore:String) [Get-Process],
ProcessCommandException
+ FullyQualifiedErrorId : NoProcessFoundForGivenName,Microsoft.PowerShell.
Commands.GetProcessCommand

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产成人高清成人av片在线看 | 国产噜噜噜噜久久久久久久久 | 成年人网站国产 | 国产免费一区二区三区最新不卡 | 蜜桃av网 | 欧美成人高清视频 | 亚洲艳情网站 | 一区二区三区四区高清视频 | 久久久久久久久久久国产精品 | 久久精品免费国产 | 久久国产成人精品国产成人亚洲 | 黄色av免费电影 | 毛片三区 | 伊人av影院| 免费在线性爱视频 | 99亚洲伊人久久精品影院红桃 | 日日草夜夜 | 91在线视频导航 | 久久精品污 | 日韩在线观看视频一区 | 亚洲福利在线视频 | 日韩视频一区 | 97综合| 99精品国产在热久久婷婷 | 日韩欧美激情视频 | 成人性视频免费网站下载软件 | 男女羞羞在线观看 | 精品国产亚洲人成在线 | 亚洲电影免费观看国语版 | 国产在线欧美日韩 | 久久密 | 国产网站黄 | 午夜视频在线免费观看 | 中文字幕国 | 国产一区二区精品免费 | 亚洲人成在线播放网站 | 精品国产96亚洲一区二区三区 | 国产午夜亚洲精品午夜鲁丝片 | 色七七网站 | 亚洲人成在线播放 | 国产九九 |