如果答案是否定的,那么从安全角度考虑最有意义,但是我的问题源自以下内容:
PS> $s = new-pssession -sshtransport -host host -user me
PS> copy-item $filename -tosession $s ${params}
PS> enter-pssession $s
[host]: PS /home> process-data $filename >process.out
[host]: PS /home> copy-item ...
在这里,我想知道从此交互式提示是否可以将文件“返回”到我的原始会话。只是让您做类似的事情:
copy-item $filename -tosession $Host
似乎冒险,我可能不希望远程脚本能够从系统中提取内容。
但是,是否有一种使文件对调用者可用的机制?诸如Receive-Job之类的东西,如何为它提供文件?
答案 0 :(得分:1)
由于两次跳转,您无法在远程会话中 中将文件从远程会话传输到会话中,但是一旦您有发起远程会话:
PS> $s = New-PSSession -SSHTransport -Host host -User me
PS> $filename | Copy-Item -ToSession $s -Destination /home/
PS> Enter-PSSession -Session $s
[host]: PS> process-data $filename >process.out
[host]: PS> Exit-PSSession
PS> Copy-Item -FromSession $s -Path /home/process.out -Destination C:\Temp\
在*Session
上使用Copy-Item
参数时,它将使用WinRM
而不是SMB
来处理文件传输。这是 more 安全。