Powershell 命令(例如ls
add )可以添加许多新行。例如
>ls
Directory: C:\Users\JohnDoe
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 1/9/2014 12:19 PM .py
d----- 8/20/2013 12:43 PM .android
d----- 5/9/2017 1:08 PM .atom
d----- 3/17/2014 7:11 PM .nps
d----- 5/20/2017 1:09 AM .cis
>
注意,上面输出后添加了 2 个空白新行,并且前后有大量新行Directory: ...
我希望常见的 powershell 命令能够删除这些多余的空格。
答案1
这不是错误。这是通过内置 PS 格式化程序设计的,所有 PS cmdlet 都由它们控制,它们位于此处:
C:\Windows\System32\WindowsPowerShell\v1.0
我不建议改变它们,但你可以看到关于格式化程序的讨论。
如何更改 Powershell 的默认输出格式以使用 Format-Table -autosize?
您可以使用 PowerShell 和 Windows 中的本机和 .net 方法轻松删除字符串/文件中的空格,甚至是整行,无论是空的还是非空的,但你必须控制该输出,而不是将其留给默认解析器/主机。网络上有大量示例和完整脚本可供您使用/调整以供自己使用。
例子:
# Change the layout of Get-ChildItem output using the default simple properties
ls D:\Temp | Select mode,LastWriteTime,Length,Name
# Results
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2/6/2017 10:17:04 PM Duplicates
d----- 7/20/2018 12:27:52 PM EmptyFolder
只需使用您的帖子标题或以下方式进行搜索:'powershell 删除命令输出中的空白行''powershell 修剪命令输出中的空白行'
Powershell get-childitem 输出格式
https://stackoverflow.com/questions/21763692/powershell-get-childitem-output-formatting
使用格式命令更改输出视图
使用 PowerShell 从文件中删除空行
https://www.pixelchef.net/remove-empty-lines-file-powershell
删除 powershell 输出中的空行
https://stackoverflow.com/questions/32252707/remove-blank-lines-in-powershell-output
从 Powershell 输出中删除空行
https://stackoverflow.com/questions/21524469/remove-empty-lines-from-powershell-output
使用 PowerShell 删除文本文件中的所有空白行
https://www.madwithpowershell.com/2013/08/delete-all-blank-lines-from-text-file.html
PowerShell:从命令输出中删除空行
https://www.mcbsys.com/blog/2011/03/powershell-remove-blank-lines-from-command-output