使用powershell将txt文件作为列合并到csv中
Merging txt files as columns into csv with powershell
抱歉,如果这个问题已经有人问过,但我这辈子都找不到有效的答案。
我有一堆 .txt 文件,每个文件包含一列内容。我想将它们合并到一个 .csv 中,其中的列将彼此相邻。
所以如果第一个输入 in1.txt 是:
banana
pear
apple
orange
第二个in2.txt是
airplane
truck
car
bus
我希望生成的 csv,比如说 out.csv,是:
banana,airplane
pear,truck
apple,car
orange,bus
有没有办法用 Powershell 做到这一点?
好吧,我同意 EBGreen 的两个评论,但要指导您一些方向...
如果你的两个文件长度相同,你可以使用简单的for循环,如果
不,你应该更努力一点,但你可以从这个作为一个想法开始......
$txt1 = Get-Content C:\txt1.txt
$txt2 = Get-Content C:\txt2.txt
$csv = @()
for ($i = 0; $i -lt $Txt1.Count; $i++){
$row = "" | Select txt1,txt2
$row.txt1 = $txt1[$i]
$row.txt2 = $txt2[$i]
$csv += $row
}
$csv | Export-Csv c:\txt.csv -NoTypeInformation
抱歉,如果这个问题已经有人问过,但我这辈子都找不到有效的答案。
我有一堆 .txt 文件,每个文件包含一列内容。我想将它们合并到一个 .csv 中,其中的列将彼此相邻。
所以如果第一个输入 in1.txt 是:
banana
pear
apple
orange
第二个in2.txt是
airplane
truck
car
bus
我希望生成的 csv,比如说 out.csv,是:
banana,airplane
pear,truck
apple,car
orange,bus
有没有办法用 Powershell 做到这一点?
好吧,我同意 EBGreen 的两个评论,但要指导您一些方向...
如果你的两个文件长度相同,你可以使用简单的for循环,如果 不,你应该更努力一点,但你可以从这个作为一个想法开始......
$txt1 = Get-Content C:\txt1.txt
$txt2 = Get-Content C:\txt2.txt
$csv = @()
for ($i = 0; $i -lt $Txt1.Count; $i++){
$row = "" | Select txt1,txt2
$row.txt1 = $txt1[$i]
$row.txt2 = $txt2[$i]
$csv += $row
}
$csv | Export-Csv c:\txt.csv -NoTypeInformation