【问题标题】:Annoying messages while running copy-item to a PSSession将复制项运行到 PSSession 时出现烦人的消息
【发布时间】:2020-02-20 07:52:33
【问题描述】:

我正在将一些文件复制到服务器,使用带有 copy-item 和 new-PSSession 的 PowerShell 5。我脚本中的相关行是(或者这就是我的想法):

  $session = New-PSSession -ComputerName $server -Credential $psCred ;
  Copy-Item $source -ToSession $session -Destination $target -Force;

我的真实脚本还有一些复制项调用。当此脚本运行时,我在 PS 窗口中看到消息闪烁。当我从命令行运行它时,它们处于带有 powershell-blue 背景的文本模式;当我从 ISE 运行它时,它们会被 GUI 化并显示为文本框。它们很快消失,但看起来像“正在复制”和当前复制的文件的名称。所以,它们是进度消息。

但我想要一个无声的副本。我没有有意识地激活一些调试标志。如何抑制进度消息?

我试图附加 |复制项的空值。我试过 -InformationAction SilentlyIgnore。我查看了 PSSessionOption,发现没有任何帮助。我试图在网上搜索,但似乎每个人都在要求更多消息,而不是更少。

【问题讨论】:

  • 你不能。该副本正在使用进度条,而不是实际输出。这种情况在大文件上最为明显。
  • 如果是进度条,可以设置$ProgressPreference = "SilentlyContinue"抑制进度条显示。
  • 非常感谢布鲁斯,解决了这个问题。如果您将此作为答案发布,我会给您“接受”标记。

标签: powershell copy remote-server


【解决方案1】:

comment by @Bruce Payette:

  • 设置$ProgressPreference = "SilentlyContinue" 禁止显示进度。

您还可以设置许多其他偏好变量:PowerShell Preference Variables

【讨论】:

    猜你喜欢
    • 2014-06-10
    • 2018-06-20
    • 1970-01-01
    • 2013-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-21
    • 1970-01-01
    相关资源
    最近更新 更多