我在使用带有 pscp 命令的变量时挣扎了一段时间。
ForEach ($Server in $Servers)
{
.\pscp.exe -pw $password create_ssh $myUsername@$Server:/home/$myUsername/create_ssh
.\plink.exe -pw $password $myUsername@$Server -C "uname -r"
}
输出
Local to local copy not supported
2.6.32-573.1.1.el6.x86_64
当我尝试指定不使用变量的主机名时,传输文件没有任何问题。但是,如果我尝试使用变量 $Server,我会收到一个错误“不支持本地副本”我认为这可能是变量本身的问题,但是 .\plink 可以正常工作
我尝试使用逗号、转义 @、完整路径等。似乎没有任何效果。我不能使用 winscp.dll,因为在这种特定情况下,我需要自动接受主机密钥(这是不安全的,但仅针对这种情况)——这仅由 pscp 提供。
非常感谢!