該命令將在頂部產生1個額外的行,並在底部產生3個額外的行。爲什麼這個powershell代碼片段會產生額外的空行?
Get-Process | select Name | ft -HideTableHeaders | Out-File .\process.txt
同樣的事情發生在其他列表如讀取目錄。
該命令將在頂部產生1個額外的行,並在底部產生3個額外的行。爲什麼這個powershell代碼片段會產生額外的空行?
Get-Process | select Name | ft -HideTableHeaders | Out-File .\process.txt
同樣的事情發生在其他列表如讀取目錄。
相同的結果前面的答案,但在另一種語法:
Get-Process | foreach{ $_.Name} > .\process.txt
還有到底是空行,但
我認爲empy行是由於格式表輸出和out-file在字符串之間放置行結束符,但我不太確定。
爲了避免這種情況,你可以做這樣的事情,如果你在一個文件只需要名單:
Get-Process | % { if ($_ -ne $null) { $_.name } } | Out-File .\process.txt
這將是有用的,如果Out-File
有-SuppressLastEmptyLine
開關,以避免最後一個空 線。
你可以把它變成一個字符串,並修剪:
(Get-Process | select Name | ft -HideTableHeaders | Out-String).Trim() | Out-File .\process.txt
而不是三個,現在在最後只有一條空行。
Powershell有時可能會很煩人。 – wtjones 2012-04-03 14:37:33