我正在尝试使用plink在OVMS服务器上执行远程命令。当我尝试执行一个简单的命令时,它正常工作:
plink -ssh -l USERID HOST-pw PASSWORD DIR
但是当我开始使用一些复杂的命令时,它会抛出错误:
plink -ssh -l USERID HOST-pw PASSWORD wnb search/keys="TRN|0567 6789"/log/sys
请建议。
答案 0 :(得分:0)
试验和错误会产生结果。实际上正如Hein所暗示的那样,问题在于引号没有被正确传输,但语法不同。
以下是适用于我的语法(Windows:plink(0.63)>> VMS):
plink -ssh -l USER HOST -pw PWD "mycommand arg, """quoted arg1""", """quoted arg2""" /opt1 /opt2"
VMS上的导致:
mycommand arg, "quoted arg1", "quoted arg2" /opt1 /opt2
THUS:plink>> VMS double-quote="""
,但可能仍然遇到< > | << >>
字符问题,因为这些问题因Windows cmd CLI而导致管道混乱。
更好:使用plink -m cmds-file
选项在本地文件中传递远程命令:
plink -ssh -l USER HOST -pw PWD -m cmds.vms
其中cmd.vms
文件包含:
mycommand arg, "quoted arg1", "piped|arg" /opt1 /opt2