我有一个命令ssh
到服务器,pbrun
给用户并一次创建一个目录。命令正在成功执行:
ssh severname ' pbrun su - userid - c "mkdir hello" '
当我将它放在shell脚本中时,servername
,userid
和directory
名称是可变的。
像:
ssh $servername ' pbrun su - $userid - c "mkdir $dirname" '
我收到错误:
请求pbrun拒绝..
帮我避免错误。
注意:userid和其他变量的输入值是正确的,我验证了它们。
答案 0 :(得分:3)
使用单引号('...'
),您在执行ssh
命令时不会让变量扩展。
请使用双引号("..."
),转义嵌入的引号:
ssh $servername " pbrun su - $userid - c \"mkdir $dirname\" "