Plink命令对cmd.exe无效

时间:2010-07-11 02:11:34

标签: batch-file

我正在尝试向我的esx服务器抛出一个plink命令并grep命令的linux输出。上面的代码不起作用。但是,如果我删除| grep部分它再次工作。有没有其他方法可以实现相同的结果,但使命令可以通过cmd.exe传递?

FOR /F "TOKENS=1 DELIMS=:" %%A IN ('TYPE %SYSTEMDRIVE%\Users\Ian\Desktop\backup.list') DO ECHO %%A & (FOR /F "TOKENS=2*" %%B IN ('%PLINK% -batch -ssh %USERNAME%@%ESXHOST% -pw %PASSWORD% vim-cmd vmsvc/get.datastores %%A | grep datastore') DO ECHO %%B)

1 个答案:

答案 0 :(得分:1)

只是看着它(目前没有plink.exe进行测试),问题似乎是|被cmd.exe解释而不是作为参数字符串的一部分传递给plink.exe。

如果这个猜测是正确的,那么这是一个简单的解决方法:只需在|前面加^即可逃避%%A | grep,以便%%A ^| grep变为{{1}}。< / p>