pythonで外部のシェルスクリプトやコマンドを実行する方法です。
今回はpythonのコードに入力されたIPアドレスが正しいかをチェックする「ip-address_check.sh 」を実行してその結果を格納して表示する動作を想定しています。
外部のシェルスクリプトを実行するとなると2パターンあるのですが返り値が違います。
-
os.system('ls -la')
コマンドが成功すれば0が返ってきます。 -
commands.getoutput("ls -la")
実際に実行した結果が返ってきます。
#!/usr/bin/env python
import commands
check = commands.getoutput("./ip-address_check.sh 192.168.1.1")
print check
ip-address_checkでは書式に問題なければOKを返すように作成されていますので、この場合print checkによりpythonの出力結果としてもOKが出力されます。
意外とコマンドを忘れがちなのでメモしておきます。
python歴半年になったので読んだ参考書を晒してみる http://komeiy.hatenablog.com/entry/2014/11/28/223223