より正確に言うと、私がやろうとしていることは次のとおりです。
- 私の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)
その結果、 python を実行できるmyPythonScript.py ls
ようになりましたが、オプションを追加する方法がわかりません。を使用できることparser.add_option
はわかっていますが、特定のオプションのみを使用可能にしたくないため、すべてのオプションで機能させる方法がわかりませんが、実行中のコマンドに応じてすべての可能なオプションが可能です。のようなものを使用できますparser.add_option('-*')
か? 次に、オプションを解析し、オプションを指定してコマンドを呼び出すにはどうすればよいですか?
編集
引数として渡されたすべてのタイプのコマンドを解析するプログラムが必要です: python myScript.py ls -Fl
、、python myScript.py git pull
などpython myScript rm -rf *
...