我需要使用ssh在远程服务器上运行命令。我只能使用rsa密钥进行身份验证,并且需要将PHP变量传递给远程脚本。我已经很接近解决方案了,但是必须引用几个参数。这是我最好的方法:
$output = shell_exec("ssh root@<IP-addr> \"cd dns; ./nsadd.sh -t prod -v lm -h $hostname -i $min_ip_produzione -c $cname -d $descr");
问题带有$ desc变量,该变量必须是自由文本字符串,必须用引号引起来。
我尝试了以下两种方法,但都没有成功:
$output = shell_exec("ssh root@<IP-addr> \"cd dns; ./nsadd.sh -t prod -v lm -h $hostname -i $min_ip_produzione -c $cname -d \"$descr\"");
$tmp="\"".$desc;
$comment=$tmp."\"";
$output = shell_exec("ssh root@<IP-addr> \"cd dns; ./nsadd.sh -t prod -v lm -h $hostname -i $min_ip_produzione -c $cname -d $comment");
预先感谢您的帮助。