none
powershell 使用 copy-item 复制文件特别慢 RRS feed

  • 问题

  • 在域控制器中,使用  copy-item -tosession 从服务端复制文件到客户端,130 M 的大小需要花上 50 秒的时间。而手动从服务端复制到客户端则花费不到 10 秒左右。请问如何提高 copy-item 的速度?或者有其他 pssession 相关的复制方法可以更快的复制?谢谢你的帮忙,感激不尽!

    2021年4月15日 7:13

答案

  • 您好,

    不知道您手动复制具体是怎样做的。使用Copy-Item -ToSession,默认的是使用WinRM协议建立的会话,传输文件速度的差异可能是因为使用的协议不同。WinRM本身不是为传输文件设计的协议,传输速度也没有什么办法来提高。您可以尝试下使用别的协议来传输文件,比如SMB。如果您使用的是PowerShell 6或者PowerShell 7,也可以使用SSH来建立会话,传输文件的速度应该会快于WinRM,慢于SMB。具体的您可以参考下面这个链接。

    https://docs.microsoft.com/en-us/powershell/scripting/learn/remoting/ssh-remoting-in-powershell-core

    如果您还有其他疑问,请随时与我们联系。如果回答是有帮助的,请将其标记为答案,可以帮助其他有相同问题的社区成员快速找到有用的答案。

    祝好

    Ian Xue



    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.



    • 已编辑 Ian Xue 2021年4月16日 7:28
    • 已标记为答案 陈小升 2021年4月19日 9:20
    2021年4月16日 7:13