[英]Plink command is invalid to cmd.exe
我正在尝试向我的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)
仅查看它(目前没有要测试的plink.exe),问题似乎是|
由cmd.exe解释,而不是作为参数字符串的一部分传递给plink.exe。
如果这个猜测是正确的,那是一个简单的解决方法:只需跳过|
通过在其前面加上^
,以便%%A | grep
%%A | grep
变成%%A ^| grep
%%A ^| grep
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.