管道 - 使用 PowerShell cmdlet 的輸出
人們在開始使用 PowerShell 進行指令碼編寫時遇到的第一個問題是如何操作 cmdlet 的輸出來執行另一個操作。
管道符號|
在 cmdlet 的末尾用於獲取它匯出的資料並將其提供給下一個 cmdlet。一個簡單的例子是使用 Select-Object 僅顯示 Get-ChildItem 顯示的檔案的 Name 屬性:
Get-ChildItem | Select-Object Name
#This may be shortened to:
gci | Select Name
更高階的管道使用允許我們將 cmdlet 的輸出傳遞到 foreach 迴圈:
Get-ChildItem | ForEach-Object {
Copy-Item -Path $_.FullName -destination C:\NewDirectory\
}
#This may be shortened to:
gci | % { Copy $_.FullName C:\NewDirectory\ }
請注意,上面的示例使用$ _自動變數。 $ _是$ PSItem 的短別名,它是一個自動變數,包含管道中的當前項。