使用python在终端中运行命令行命令
我必须使用python脚本运行一个终端命令。一般的做法是使用python在终端中运行命令行命令,python,python-3.x,command-line,terminal,Python,Python 3.x,Command Line,Terminal,我必须使用python脚本运行一个终端命令。一般的做法是 In [1]: import subprocess In [2]: subprocess.Popen(['python some-python-script.py'],shell=True) Out[2]: <subprocess.Popen at 0x103425358> 但是没有帮助 我在OSx Sierra上,但欢迎使用独立于平台的解决方案 您可以从子流程模块使用。由于您的命令必须执行多次,您可以在for循环中调用函
In [1]: import subprocess
In [2]: subprocess.Popen(['python some-python-script.py'],shell=True)
Out[2]: <subprocess.Popen at 0x103425358>
但是没有帮助
我在OSx Sierra上,但欢迎使用独立于平台的解决方案 您可以从子流程模块使用。由于您的命令必须执行多次,您可以在for
循环中调用函数。脚本可能看起来像这样(范围的上限可能是可变的):
如文档中所述,check\u output
函数将数据作为编码字节返回,但由于在我的示例中指定了编码,因此输出将是UTF-8编码字符串。根据您的命令,可能需要单独处理对文本的解码
In [11]: os.system("Terminal -x python some-python-script.py")
sh: Terminal: command not found
import subprocess
for idx in range(5):
print(subprocess.check_output(['python3', 'full-path-to-script.py'], encoding='utf-8'))