如何避免在Out-File的末尾出现空行?
$DirSearcher = New-Object System.DirectoryServices.DirectorySearcher([adsi]'')
$DirSearcher.Filter = '(&(objectClass=Computer)(!(cn=*esx*)) (!(cn=*slng*)) (!(cn=*dcen*)) )'
$DirSearcher.FindAll().GetEnumerator() | sort-object { $_.Properties.name } `
| ForEach-Object { $_.Properties.name }`
| Out-File -FilePath C:\Computers.txt
我尝试了几个选项,但似乎没有任何选项,最后它们仍然有一个空行。
(get-content C:\Computers.txt) | where {$_ -ne ""} | out-file C:\Computers.txt
$file = C:\Computers.txt
Get-Content $file | where {$_.Length -ne 0} | Out-File "$file`.tmp"
Move-Item "$file`.tmp" $file -Force
答案 0 :(得分:2)
[IO.File]::WriteAllText("$file`.tmp",
((Get-Content $file) -ne '' -join "`r`n"),
[Text.Encoding]::UTF8)
答案 1 :(得分:1)
通常,当您查看字符串是否没有字符数据时,您会想要使用String.IsNullOrWhiteSpace()
:
Get-Content $file | Where-Object { ![String]::IsNullOrWhiteSpace($_) } | Out-File "$file`.tmp"
答案 2 :(得分:0)
这是使用powershell命令避免txt文件末尾出现空行的最佳解决方案
添加内容C:\ Users \ e5584332 \ Desktop \ CSS.txt“页脚|已处理的唯一数据|| $ count” -NoNewline