如何删除文件中的空行?
当我搜索它时,人们正在创建另一个文件来移动非空行,如下所示
gc c:\FileWithEmptyLines.txt | where {$_ -ne ""} > c:\FileWithNoEmptyLines.txt
有没有办法删除源文件本身的行?
答案 0 :(得分:4)
为什么不能将它保存回同一个文件?将其分为两行:
$var = gc c:\PST\1.txt | Where {$_ -ne ""}
$var > c:\pst\1.txt
答案 1 :(得分:3)
跳过与空格,制表符或换行符匹配的行:
(Get-Content c:\FileWithEmptyLines.txt) | `
Where-Object {$_ -match '\S'} | `
Out-File c:\FileWithEmptyLines.txt
更新:对于多个文件:
$file = Get-ChildItem -Path "E:\copyforbuild*xcopy.txt"
foreach ($f in $file)
{
(Get-Content $f.FullName) | `
Where-Object {$_ -match '\S'} | `
Out-File $f.FullName
}