所以更准确地说,我想做的是:
- 读取完整的 shell 命令作为我的 python 脚本的参数,例如:
python myPythonScript.py ls -Fl
- 当我愿意时在我的 python 脚本中调用该命令(在某些文件夹上创建一些循环并应用命令等......)
我试过这个:
import subprocess
from optparse import OptionParser
from subprocess import call
def execCommand(cmd):
call(cmd)
if __name__ == '__main__':
parser = OptionParser()
(options,args) = parser.parse_args()
print args
execCommand(args)
结果是现在我可以做 pythonmyPythonScript.py ls
了,但我不知道如何添加选项。我知道我可以使用parser.add_option
,但不知道如何使它适用于所有选项,因为我不想只提供特定选项,而是所有可能的选项取决于我正在运行的命令。我可以使用类似的东西parser.add_option('-*')
吗?然后如何解析选项并使用其选项调用命令?
编辑
我需要我的程序来解析作为参数传递的所有类型的命令:python myScript.py ls -Fl
,,python myScript.py git pull
等等python myScript rm -rf *
......