pythonで外部シェルスクリプトを実行する方法

f:id:komeiy:20140820222339p:plain

pythonで外部のシェルスクリプトやターミナルで叩いている所謂コマンドを実行する方法です。

今回はpythonのコードに入力されたIPアドレスが正しいかをチェックする「ip-address_check.sh 」を実行してその結果を格納して表示しています。

外部のシェルスクリプトを実行するとなると2パターンあるのですが返り値が違います。

  1. os.system('ls -la')
      コマンドが成功すれば0が返ってきます。

  2. 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.shはIPアドレスの書式をチェックしています。
APIやexpectを使ったWEB UIを作成する際など、これからエラー処理で活躍しそうです。

シェアして頂けると嬉しいです。
参考になったという方がいれば是非お願いしますm(_ _ )m
モチベーション維持の観点で非常に励みになります。

このエントリーをはてなブックマークに追加

Pythonスタートブック

Pythonスタートブック

パーフェクトPython (PERFECT SERIES 5)

パーフェクトPython (PERFECT SERIES 5)