Powershell 合并文件夹中的文件,每个文件之间有空行';内容
我有一堆文本文件保存在一个文件夹中。我想把它们合并成一个文件,比如说“all.txt”,每个文件的内容之间有一个空行。 我已经看到这个问题用bash解决了 如何使用Powershell完成类似的壮举 试试这个:Powershell 合并文件夹中的文件,每个文件之间有空行';内容,powershell,Powershell,我有一堆文本文件保存在一个文件夹中。我想把它们合并成一个文件,比如说“all.txt”,每个文件的内容之间有一个空行。 我已经看到这个问题用bash解决了 如何使用Powershell完成类似的壮举 试试这个: $sourcePath = "C:\Temp\*.txt" $destFile = "C:\Temp\all.txt" $encoding = "ASCII" Remove-Item $destFile -ErrorAction SilentlyContinue (Get-Child
$sourcePath = "C:\Temp\*.txt"
$destFile = "C:\Temp\all.txt"
$encoding = "ASCII"
Remove-Item $destFile -ErrorAction SilentlyContinue
(Get-ChildItem -path $sourcePath) |
where-object { -not $_.PSIsContainer } |
ForEach-Object {
Get-Content $_; ""
} |
Out-File $destFile -Encoding $encoding
不用说。get-childitem
位于参数中,以确保在创建all.txt
之前收集文件列表。然后使用过滤出目录,其中对象{-not$\psicontainer}
对每个文件进行迭代。迭代器输出文件内容,后跟一个空行。最后,使用指定的编码将整个管道重新定向到$destFile
。尝试以下操作:
$sourcePath = "C:\Temp\*.txt"
$destFile = "C:\Temp\all.txt"
$encoding = "ASCII"
Remove-Item $destFile -ErrorAction SilentlyContinue
(Get-ChildItem -path $sourcePath) |
where-object { -not $_.PSIsContainer } |
ForEach-Object {
Get-Content $_; ""
} |
Out-File $destFile -Encoding $encoding
不用说。
get-childitem
位于参数中,以确保在创建all.txt
之前收集文件列表。然后使用过滤出目录,其中对象{-not$\psicontainer}
对每个文件进行迭代。迭代器输出文件内容,后跟一个空行。最后,整个管道用指定的编码重新定向到$destFile
。我尝试了它,它给了我一个文件,其中包含目录中所有文件的文件名,中间有空行。我想要文件的内容,而不是文件名。这很奇怪。它适用于我,显示文件名,然后显示文件内容。是否复制/粘贴或重新键入?编辑以删除文件名。结果表明,我键入的路径不正确。工作顺利;谢谢!要读取文件,您必须知道写入文件时使用的字符编码。此代码适用于每种类型。文本文件不太可能是ASCII,尽管提问者必须知道。我试过了,它给了我一个文件,其中包含目录中所有文件的文件名,中间有空行。我想要文件的内容,而不是文件名。这很奇怪。它适用于我,显示文件名,然后显示文件内容。是否复制/粘贴或重新键入?编辑以删除文件名。结果表明,我键入的路径不正确。工作顺利;谢谢!要读取文件,您必须知道写入文件时使用的字符编码。此代码适用于每种类型。文本文件不太可能是ASCII码,尽管提问者必须知道。