ゆっくりPython
Pythonメモ。
Pythonで外部コマンド起動
(注) 今はsubprocessを使うのが推奨されているとのこと。あとでsubprocessで書きなおすよ。
os.popenを使うと良い。popenを使ってlsの結果を出力するサンプル。
import os for line in os.popen('ls'): print line
実行したコマンドでエラーがなかったどうかを調べるにはpopenで返ったファイルオブジェクトをclose()したときの値をチェックすれば良い。正常に動作した場合にはNoneが、エラーがあった場合にはそれ以外(エラー番号?)が返る。
import os ps = os.popen('lssssss') for line in ps: print line result = ps.close() if result is not None: print "error:", result
コマンド引数を扱う
sys.argvにコマンド引数が入っている。argv[0]にはスクリプト名が入る。
import sys print "script name: " + sys.argv[0] print sys.argv
これを実行してみる。
$ python params.py aaa bbb script name: params.py ['params.py', 'aaa', 'bbb'] $