powershell 在每次嵌套循环迭代结束时将内容追加到文件末尾?

k10s72fa  于 2022-12-26  发布在  Shell
关注(0)|答案(1)|浏览(115)
$words = Get-Content D:\words.txt
$row = Get-Content D:\row.txt
$j=0

 Get-Content D:\row.txt | ForEach-Object {
    for ($i = 0; $i -lt $words.Count; $i++){
   Write-Host ($row.Getvalue($j)+ ". " + $words.GetValue($i))
   }
   $j++
   Write-Host ("`n")
} | Set-Content D:\rip.txt
*OUTPUT*
1. alpha
1. beta
1. charlie
1. delta

2. alpha
2. beta
2. charlie
2. delta

3. alpha
3. beta
3. charlie
3. delta

4. alpha
4. beta
4. charlie
4. delta

我想将嵌套循环的所有内容保存到rip.txt文件中,但是保存不正确,要么文件中没有内容,要么只有第一行内容保存到文件中

1. alpha
1. beta
1. charlie
1. delta
vqlkdk9b

vqlkdk9b1#

您的代码可以简化为:

$words = Get-Content D:\words.txt
Get-Content D:\row.txt | ForEach-Object {
    foreach($word in $words) {
        "$_. $word"
    }
    "`n"
} | Set-Content D:\rip.txt

主要问题是Write-Host的使用,它写入信息流而不是成功流。

相关问题