2

plink在 Windows 7 桌面上使用在 Windows 2008 服务器上创建文件夹 a。服务器使用 pragmaSSH 来允许 SSH 连接,并且一切正常。

我要创建的目录中有一个空格,这就是我的问题开始的地方。

我有一个plink像这样工作的基本命令

plink.exe -i privatekey.ppk user@server cmd.exe /c mkdir "c:\asdfasdf"

但是将该命令更改为此失败。所以空间肯定是我的问题。

plink.exe -i privatekey.ppk user@server cmd.exe /c mkdir "c:\asdf asdf"

我试图以我能想到的一切可能的方式来逃避这种情况,并且总是在空间上遇到同样的问题。

好的,经过 60000 次尝试后,我想出了如何将引号传递给服务器。

plink.exe -i privatekey.ppk useryserver mkdir \\"""c:\asf asf\\"""

并在每一侧发送了 1 个引号并将命令运行为 mkdir "c:\asf asf"

4

1 回答 1

2

引号足以逃避命令,因为plink它不够聪明,无法在另一边再次引用(合理,因为它不知道可能在那里运行什么奇怪的 shell)。

所以你需要以下内容:

plink.exe -i privatekey.ppk user@server cmd.exe /c mkdir "\"c:\asdf asdf\""
于 2011-07-19T07:40:11.290 回答