如何在 Foreach-Object Parallel 內使用變數?
有兩種不同的型別變數,可以在 foreach parallel 迴圈內使用。一種是在迴圈內宣告的,另一種是在 foreach parallel 迴圈外宣告的。
請注意 − 在此討論的是 Foreach-Object Parallel 迴圈,適用於 PowerShell 版本 7。對於普通 foreach 迴圈,內外部變數都是相同的。
在 Foreach parallel 迴圈內宣告的變數可以直接使用其名稱。例如,
示例
$vms = "TestVm1","TestVM2","TestVm3"
$Vms | ForEach-Object -Parallel{
$var1 = $_
Write-Output "Testing VM: $var1"
}輸出
Testing VM: TestVm1 Testing VM: TestVM2 Testing VM: TestVm3
在上述示例中,$var1 在 foreach parallel 迴圈內宣告,我們可以直接用其名稱來使用它,如所示。但是在以下示例中,在 foreach parallel 迴圈外宣告的 $log 變數,我們可以透過 $Using 關鍵字後跟變數名稱,在迴圈內使用它。
$vms = "TestVm1","TestVM2","TestVm3"
$log = "Application"
$Vms | ForEach-Object -Parallel{
$var1 = $_
Write-Output "Checking $($using:log) on $var1"
}輸出
Checking Application on TestVm1 Checking Application on TestVM2 Checking Application on TestVm3
在上述示例中,在 foreach parallel 迴圈內使用的 $using:log 變數是一個 $log 變數。
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP