pythonからコマンド呼ぶ
pythonからコマンド呼んでその返り値も利用して何かしたくなった。
sh使った方が良いとかそういう話もありますが、まぁpythonで。
commandsという便利そうな野があったので使ってみました。
サンプルで、適当な範囲のIPから返答があるかどうか調べて、OK/NGを返すだけのスクリプト
pingコマンドに回数指定しないと、延々返ってこない。
#!/usr/bin/env python # coding:utf-8 import commands ip_base = '10.0.0' start_ip = 10 ip_range = 5 for i in range(ip_range): i += start_ip ping_res = commands.getstatusoutput('ping -c 1 %s.%s'%(ip_base, i)) if ping_res[0] == 0: print 'OK %s.%s'%(ip_base, i) else: print 'NG %s.%s'%(ip_base, i)
もっと簡単に便利そうなのありそうだけどなぁ