$contacts1 = Import-Csv "C:\temp\gal\gal1.csv"
Start-Job -Name Loop1 -ScriptBlock {
param([string[]]$contacts1)
foreach ($c1 in $contacts1){
$name = $c1.displayname
New-Item -Path "C:\Temp\GAL" -Name "$name" -ItemType "file"
}
} -ArgumentList (,$contacts1)
Wait-Job -Name Loop1 | Receive-Job
Get-Job -Name Loop1 | Remove-Job
以上是使用從CSV內創建的名稱創建一個文件,但接下來的三個循環只是嘗試並創建相同的名稱。但是,如果我將所有與作業有關的東西註釋掉,如下所示,循環本身會成功創建四個具有正確名稱的文件。在Powershell中使用作業
$contacts1 = Import-Csv "C:\temp\gal\gal1.csv"
#Start-Job -Name Loop1 -ScriptBlock {
#param([string[]]$contacts1)
foreach ($c1 in $contacts1){
$name = $c1.displayname
New-Item -Path "C:\Temp\GAL" -Name "$name" -ItemType "file"
}
#} -ArgumentList (,$contacts1)
#Wait-Job -Name Loop1 | Receive-Job
#Get-Job -Name Loop1 | Remove-Job
你的問題是什麼 - _Start-Job_試圖多次創建同一個文件,其中常規循環工作正常?這也有助於查看CSV的內容。 – Raf