PowerShell远程命令参数的大小限制 7


在基于PSSession执行Invoke-Command 命令时,可以传递命令或者脚本,这些命令和脚本会被发送到远程机器上去执行,执行完以后,会返回相应的结果。

这就牵扯到了两类数据:

  1. 上行的:传递的命令,单个远程命令中可以发送给该计算机的数据量的限制(Maximum Received DataSize Per Command)
  2. 下行的:返回的对象,任何单个对象中可以发送给该计算机的数据量的限制 (Maximum Received Object Size)

默认的最大值前者是50MB,后者是10M。参考自:Set-PSSessionConfiguration

一次性传输的命令或返回的结果太大会占用服务器带宽资源,有所限制,自然无可厚非。微软在PowerShell中给出了一个专门的PSsessionConfiguration配置,在你要连接的服务器端,设置一条配置通道。然后在客户端建立会话时指定该通道即可。比如我想更改上面的默认配置,限制为1M:

先注册一个Register-PSSessionConfiguration配置实例,然后使用Set-PSSessionConfiguration来指定1M的限制,即可。

Set-PSSessionConfiguration限制参数大小

Set-PSSessionConfiguration限制参数大小

为了测试,假如从另外一台机器(作为客户端)连接刚才设置的机器,命令超过限制应当会报错,是的:

Set-PSSessionConfiguration生效

Set-PSSessionConfiguration生效

 

 

本文链接: https://www.pstips.net/maximumreceiveddatasizepercommandmb.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

关于 Mooser Lee

我是一个Powershell的爱好者,创建了PowerShell中文博客,热衷于Powershell技术的搜集和分享。本站部分内容来源于互联网,不足之处敬请谅解,并欢迎您批评指正。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

7 条评论 “PowerShell远程命令参数的大小限制