有人可以帮助理解远程PowerShell中的多线程吗? 我正在尝试仅使用WinRM将文件复制到远程计算机。这是算法:
问题是我在执行远程PowerShell块时得到“进程无法访问文件,因为它被另一个进程使用”类型的错误。看起来PowerShell并行执行我的脚本块。但我需要顺序执行。我可以覆盖这个吗?
完整的代码示例here。
答案 0 :(得分:2)
每次创建远程PowerShell会话时,它都使用不同的PowerShell进程来执行请求。这就是您遇到文件争用问题的原因。您应该考虑为每个操作使用相同的远程会话,而不是每次要添加块时都创建一个新的。
顺便说一下,如果你打开(或当你到达)V5,你可以使用$s = New-PSSession remoteComputerName; Copy-Item src.txt C:\dst.txt -ToSession $s
将文件复制到远程计算机。