请求外部程序在Ubuntu中用python脚本执行某些工作

2024-04-23 21:01:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在ubuntu中用python编写一个脚本,用外部程序(安装在ubuntu中)多次执行一系列任务。 我可以从终端运行一个文件的程序,但是我想通过编写python脚本来实现自动化,这样它就可以读取文件并执行任务。我该怎么办? 先谢谢你


Tags: 文件程序脚本终端ubuntu
2条回答

使用subprocess.run()

from subprocess import run

program = './program'
files = ['f1.txt', 'f2.txt', 'f3.txt']

if __name__ == '__main__':
    for filename in files:
        run([program, filename], shell=True)

您也可以在一组文件上运行程序,例如那些有特定文件结尾的文件,如.txt

from os import listdir
from subprocess import run

program = './program'
folder = 'folder/'

if __name__ == '__main__':
    files = [folder + f for f in listdir(folder) if f.endswith('.txt')]
    for filename in files:
        run([program, filename], shell=True)

您可以使用system命令,或者更好地使用subprocess命令来调用现有的应用程序。 子流程更适合您的用例,因为您可以使用stdout、stderr和获取错误的状态代码

相关问题 更多 >