【发布时间】:2013-04-28 20:20:45
【问题描述】:
我有一个很长的 ssh_cmd 字符串,我从这里得到的
cmd = """kill -9 `ps -ef|grep "udp_receiver"|grep -v "grep"|awk '{print $2}'`"""
HostName="133.33.22.1"
ssh_cmd = """ssh -t inria_spoofing@{0} 'sudo nohup bash -c "{1} > /nohup.out 2>&1 &"'""".format(HostName, cmd)
结果ssh_cmd 是:
ssh -t kitty@133.33.22.1 'sudo nohup bash -c "kill -9 `ps -ef|grep "udp_receiver"|grep -v "grep"|awk '{print $2}'` > /nohup.out 2>&1 &"'
但是,我害怕当我跑步时
child = pexpect.spawn(ssh_cmd)
有问题, 那么如何组织字符串呢? 谢谢!
【问题讨论】:
-
结果字符串不是正确的shell字符串
-
我建议你将小的 shell 文件复制到目标机器上的 /tmp 并执行它,而不需要所有这些带引号的噩梦。
-
看起来你正在解决错误的问题。为什么需要这样做?
-
是否使用fabric 选项?
标签: python bash shell expect pexpect