Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用python在终端中运行命令行命令_Python_Python 3.x_Command Line_Terminal - Fatal编程技术网

使用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循环中调用函

我必须使用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
循环中调用函数。脚本可能看起来像这样(范围的上限可能是可变的):

如文档中所述,
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'))