在 PowerShell 中抑制 robocopy 中的空行
Suppress blank line from robocopy in PowerShell
我在 PowerShell 脚本中使用 robocopy 来规避 PowerShell 使用非常长的路径名(超过 260 个字符)的限制。程序 robocopy 被调用为
robocopy /E /NP /NFL /NDL /NJH /NJS $Source $Destination
此调用抑制了 robocopy 的所有这些详细输出,但允许显示任何错误。不幸的是,robocopy 仍然输出一个空行。由于 robocopy 输出已放入我的日志文件中,因此我想禁止显示这一空白行。
- 有没有办法告诉 robocopy 在正常操作时产生无输出?
- 是否有 war 可以用 PowerShell 抑制这条讨厌的小行?
编辑: 很明显,在一种 post 处理中实现这一点并不容易。但如果只过滤掉单行就好了。如果 robocopy 输出了一些行(包括错误),则没有必要抑制所有空行。
你有机会分享输出吗?
根据我的理解(并且可能有很长的路要走,因此为什么要求输出)你没有得到错误,你只是想要甜美,甜美的东西。在这种情况下,我们将使用 out-null
& robocopy /E /NP /NFL /NDL /NJH /NJS $Source $Destination | out-null
举个例子:
get-item c:\users | out-null
什么也不会给你。
如果我误解了你的问题,我深表歉意。
您可以使用如下命令过滤空行:
robocopy /E /NP /NFL /NDL /NJH /NJS $Source $Destination | findstr /r /v "^$"
我在 PowerShell 脚本中使用 robocopy 来规避 PowerShell 使用非常长的路径名(超过 260 个字符)的限制。程序 robocopy 被调用为
robocopy /E /NP /NFL /NDL /NJH /NJS $Source $Destination
此调用抑制了 robocopy 的所有这些详细输出,但允许显示任何错误。不幸的是,robocopy 仍然输出一个空行。由于 robocopy 输出已放入我的日志文件中,因此我想禁止显示这一空白行。
- 有没有办法告诉 robocopy 在正常操作时产生无输出?
- 是否有 war 可以用 PowerShell 抑制这条讨厌的小行?
编辑: 很明显,在一种 post 处理中实现这一点并不容易。但如果只过滤掉单行就好了。如果 robocopy 输出了一些行(包括错误),则没有必要抑制所有空行。
你有机会分享输出吗?
根据我的理解(并且可能有很长的路要走,因此为什么要求输出)你没有得到错误,你只是想要甜美,甜美的东西。在这种情况下,我们将使用 out-null
& robocopy /E /NP /NFL /NDL /NJH /NJS $Source $Destination | out-null
举个例子:
get-item c:\users | out-null
什么也不会给你。
如果我误解了你的问题,我深表歉意。
您可以使用如下命令过滤空行:
robocopy /E /NP /NFL /NDL /NJH /NJS $Source $Destination | findstr /r /v "^$"