要求脚本实现读取多个txt文件,逐行合并多个文件内容,如下:
a.txt文件内容
a a a
b b b
c c c
b.txt文件内容
1 1 1
2 2 2
3 3 3
c.txt文件内容
A A A
B B B
C C C
合并后total.txt文件内容
a a a
1 1 1
A A A
b b b
2 2 2
B B B
c c c
3 3 3
C C C
# 1.获取所有待读取的文本文件
$files = Get-ChildItem -Path .\*.txt# 2.声明一个空数组用来存储汇总内容
$totalContents = @()# 3.获取文件行数,用文件行数减一作为要循环的最大索引值
$contentLines = (Get-Content -Path $files[0].FullName).Length - 1# 4.遍历文件行数
foreach($index in 0..$contentLines){# 5.获取第一个文件的内容$firstContent = Get-Content -Path $files[0].FullName# 6.获取第二个文件的内容$secondContent = Get-Content -Path $files[1].FullName# 7.获取第三个文件的内容$threeContent = Get-Content -Path $files[2].FullName# 8.累加第一个文件第n行数据$totalContents += $firstContent[$index]# 9.累加第二个文件第n行数据$totalContents += $secondContent[$index]# 10.累加第三个文件第n行数据$totalContents += $threeContent[$index]
}
# 11.将结果写入到新的文件中
Set-Content -Path .\total.txt -Value $totalContents