我在使用 powershell 时遇到了奇怪的体验New-Item
。我的 SMB 端口都被防火墙阻止了,所以我唯一的选择是使用 PSSession。我成功创建了一个会话,并可以通过它调用命令。
有时打开会话并使用本地主机的命令会起作用,并且它使用 5986 端口连接到远程服务器。我在防火墙上检查了它。
New-Item -Path "\\remoteServer\c$\Temp\1" -Type Directory -Verbose
其他时候,相同的命令想要使用 445 但被防火墙阻止。
如果有任何差异,Jenkins 会执行 powershell 脚本。所以我的环境保持不变。
这同样适用于命令Copy-Item
。Copy-Item
至少有一个开关-ToSession
,我可以使用它来始终使用打开的会话,并且它将始终通过而无需 445 端口。New-Item
没有这个开关。
造成这种行为的原因可能是什么?有什么方法可以强制 powershell 使用创建的会话吗New-Item
?