如何运行保存在python脚本文本文件中的Linux命令?
问题描述:
假设我有一个文件'commands.txt',它有一行一行的Linux命令列表(例如:who,pwd,ls,ps,clear等)如何运行保存在python脚本文本文件中的Linux命令?
我需要一个python脚本,其中运行时应该在控制台/ shell中逐个执行所有的linux命令。
我正在寻找不同的方法来做到这一点。
可能是我认为在Python中使用os模块的一种方法。 (请纠正我,如果我错过了这里的任何东西)
import os
with open("commands.txt") as file:
for line in file:
os.system(line)
请帮助我解决这个问题的不同方法。
-TIA
答
像@papey说,
- 创建一个bash脚本(.SH)文件,用正确的shabang(#!的/ usr/bin中/ env的庆典)。
-
你可以在你的Python脚本编写,然后执行以下操作:
import os
os.system("chmod +x myscript.sh")
os.system("./myscript.sh")
'使用os.system( “SH commands.txt中”)'? –
这将工作,但如果一个命令是'cd',一个是'export X = Y'会怎么样。这是行不通的。为什么不在你的'commands.txt'文件上运行bash呢? –
使用正确的shebang(#!/ usr/bin/env bash)创建一个bash脚本(.sh),使其成为+ x然后,os.system(“./ myscript.sh”) – papey