Get exit status code from Python
我有一个python脚本,它将执行一些操作,根据结果,将使用代码0(好的)或1(不好的)退出。
我想捕获这个结果,将它存储到一个变量中,然后通过UDP发送它。这不能在python脚本中完成(要求)。
所以,假设我的脚本是这样的:
1 2 3 | import sys # Do some stuff sys.exit(0) # or sys.exit(1) |
我和
如何获取此退出状态代码(0或1)。
我试着回音
因为根据你的回答,你使用的是
测试.py
1 2 | import sys sys.exit(12) |
号
在控制台中
1 2 3 4 | python test.py RC=$? echo"Exit code $RC" program_to_send $RC |
这是一个脚本问题而不是python问题,但是在bash shell中,您使用的是$?既然任何命令改变了$?保存一份副本通常是个好主意。
1 2 3 4 5 6 | python script.py RC=$? echo $RC [ $RC == 0 ] && echo Success || echo Failed # replace above lines by whatever you need to send $RC via UDP ... |
如果这是一个windows cmd脚本问题,您可能应该用适当的标签重新发布。(我再也不干温多兹了,谢谢你$DEITY)
这应该通过捕获异常并使用记录器以正确的方式完成。
1 2 3 4 5 6 7 8 9 10 | import logging, time logging.basicConfig(level=logging.DEBUG, filename='/path/to/file/errorlog.log') try: #MySQL Connection except MySQLdb.Error as e: errortime = time.strftime('%Y-%m-%dT%H:%M:%S') logging.exception(errortime) raise os._exit(0) |
。