終了コードを反転させるプログラム
30分プログラム、その434。終了コードを反転させるプログラムを書いてみた。
今、書いてるプログラムの単体テストの結果が長すぎるので、grepで必要な情報だけ取り出している。
./test/runner | grep FAIL
でも、これだと失敗したときの終了コードが0で、成功した場合に1になってしまう。というわけで、終了コードを反転させるプログラムを書いてみた。qmailには同等のコマンドがあるらしい。
使い方
# 成功するコマンドだと、終了コードが1 $ python except.py echo hoge; echo $? hoge 1 # 失敗するコマンドだと、終了コードが0 $ python except.py ls /not/exist ls: cannot access /not/exist: No such file or directory; echo $? 0
ソースコード
import sys import os exit(not os.spawnvp(os.P_WAIT,sys.argv[1],sys.argv[1:]))