我有一个 python 脚本,它不断退出退出代码 42。问题:如何将 bash 中的退出代码替换为另一个退出代码,同时保留数字以供进一步处理?
#!/bin/bash -xe
my_script.py
我有一个 python 脚本,它不断退出退出代码 42。问题:如何将 bash 中的退出代码替换为另一个退出代码,同时保留数字以供进一步处理?
#!/bin/bash -xe
my_script.py
一旦你使用了bash
-e程序选项,那么脚本中的命令,返回一个非零的返回码,将停止对你的脚本的进一步解释。例如,要忽略非零返回码,您可以使用列表运算符:||如果它
команда-которая-может-вернуть-ошибку返回一个非零返回码,那么将被执行команда-которая-выполнится-в-этом-случае,如果第二个命令返回一个零返回码,那么脚本解释将继续在“正常模式”。第二个命令的最简单示例是
:(冒号,请参阅$ help :)。它什么也不做,并以零返回码退出。-e使用 option 时,即使第一个命令返回非零返回码,这样的构造也不会导致解释终止:由于您需要保存“有问题”命令的返回码,因此最合乎逻辑的事情是
||将最后执行的命令的返回码(存储在变量中$?)分配给某个变量(例如,$result):赋值语句
result=$?总是成功的,所以脚本解释不会被打断。全部的:
在存钱罐里。
bash 已经有一个内部数组变量来存储管道或单个命令的状态:
测量:
链接