我正在创建一个小脚本,我想使用python编程语言将varable传递给bash命令,例如:
number = raw_input("digit: ")
然后我想把数字变量放在bash命令中,例如:
ssh 'foo%s.bar'(number) <- where the %s is located id like it be replaced with the input
最后我想接受它并在仍然在python脚本中的bash命令中运行它:
ssh foo45.bar
我该如何做到这一点?
答案 0 :(得分:2)
import subprocess
number = raw_input("digit: ")
subprocess.call(('ssh', 'foo{}.bar'.format(number)))
要获得一些好的阅读,请尝试string formatting和subprocess的python文档。
如果要将上述内容与sshpass集成,请将子进程调用替换为:
subprocess.call(('sshpass', '-p', 'YOUR_PASSWORD', 'ssh', '-o', 'StrictHostKeyChecking=no', 'foo{}.bar'.format(number)))