1
我想更新與一個數組循環這樣PowerShell如何管線FOR循環
$comps = Get-ChildItem $LocalPath -recurse | Select-String -pattern "MyStringFilter" | group path | select name | Foreach {"$($_.Name)".substring(0,"$($_.Name)".IndexOf('.')).substring("$($_.Name)".LastIndexOf('\')+1) }
for ($i = 0; $i -lt $comps.count; $i++) {
if ($comps[$i].substring(0,3) -eq "AAA") {$comps[$i] = "/aaa "+$comps[$i]} else {$comps[$i] = "/bbb "+$comps[$i]}
}
$comps
上面的代碼工作正常,但是當我試圖把它做成及如何使用foreach管道數組變量變空。
$comps = Get-ChildItem $LocalPath -recurse | Select-String -pattern "MyStringFilter" | group path | select name | Foreach {$_.Name.substring(0,$_.Name.IndexOf('.')).substring($_.Name.LastIndexOf('\')+1) } | foreach { if ($_.substring(0,3) -eq "AAA") {$_ = "/aaa "+$_} else {$_ = "/bbb "+$_} }
我錯過了什麼?任何方式使它工作?
感謝,
'{「/ aaa」+ $ _} else {「/ bbb」+ $ _}' – PetSerAl