使用以下代码在每行末尾放置“,”时遇到麻烦。有什么想法吗?
w.all? { |word| word.length > 4 }
文件中的样本数据如下:
$inputFile = Get-Content "C:\PowerShell Automation\data.txt"
$outputFile = "C:\PowerShell Automation\dataoutput.txt"
foreach($Obj in $inputFile)
{
$begin = ""
$end = ","
$collate = $begin + $Obj + $end
Set-Content -path $outputFile -value $collate
}
答案 0 :(得分:5)
您可以使用单线执行此操作:
gc data.txt | %{$_ -replace '$',','} | out-file dataoutput.txt
获取文件的内容,逐行浏览,用逗号替换行尾,然后输出到新文件。
答案 1 :(得分:4)
foreach
循环的每次迭代都会覆盖文件。将Set-Content
和$collate
变量放在循环之外。
$inputFile = Get-Content "C:\PowerShell Automation\data.txt"
$outputFile = "C:\PowerShell Automation\dataoutput.txt"
$collate = foreach($Obj in $inputFile) {
$begin = ""
$end = ","
$begin + $Obj + $end
}
Set-Content -path $outputFile -value $collate