shell脚本ssh远程执行

xiongsheng 发布于 2015/07/08 11:17
阅读 2K+
收藏 0

通过shell脚本里面调用ssh远程登录修改配置文件


ssh -n  hadoop@${host} "cd $confpath;sed -i 's/$name=.*/$name=$value/g' $filename",

但是通过sh -x 执行脚本的时候,发现s和g的单引号变成了' \' ',导致执行失败,不通过脚本,直接ssh执行的话是可以的,怎么解决这个单引号的问题啊

加载中
0
sofn
sofn
外层用 " ,内部用 \" 
sofn
sofn
@xiongsheng 本质就是转义的问题,$也需要转义 更复杂的例子:ssh -n hadoop@${host} "cat error.log | head -2 | awk \"{print \\\$1\\\" \\\"\\\$2}\""
xiongsheng
xiongsheng
我比较笨,你说的什么意思呀,求指教
返回顶部
顶部