如何在Python中将变量传递给bash命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Python中将变量传递给bash命令相关的知识,希望对你有一定的参考价值。
我有一个Python脚本,随机选择一个端口并将其传递给bash命令:
#!/usr/bin/env python
import random
import os
# Select a port at random
port = ['22', '23', '24']
selected_port = (random.choice(port))
# print 'selected_port
bashCommand = "ssh -p '${selected_port}' -i pi.rsa pi@192.168.1.xx"
os.system(bashCommand)
将selected_port
变量传递给我的bashCommand
的正确方法是什么?目前我正在获得SyntaxError: EOL while scanning string literal
答案
使用Python的字符串插值机制之一:
bashCommand = "ssh -p '%s' -i pi.rsa pi@192.168.1.xx" % selected_port
要么
bashCommand = "ssh -p '{}' -i pi.rsa pi@192.168.1.xx".format(selected_port)
以上是关于如何在Python中将变量传递给bash命令的主要内容,如果未能解决你的问题,请参考以下文章