bash - 相当于命令行中的 exit

标签 bash exit-code

我有一个运行一系列 python 脚本的 bash 脚本。它始终运行所有脚本,但如果任何脚本以失败代码退出,则以失败代码退出。至少我希望它能做到这一点。这是...

#!/bin/bash

res=0

for f in scripts/*.py
do
  python "$f";
  res=$(( $res | $? ))
done

exit $res

我想在终端中将其作为 bash 命令运行,但我不知道如何替换 exit 以便该命令像失败的脚本一样失败,而不是退出终端。我该怎么做?

最佳答案

将最后一行 exit $res 替换为

$(exit ${res})

这会退出生成的子 shell,退出值为 ${res},并且因为它是最后一条语句,所以这也是脚本的退出值。

关于bash - 相当于命令行中的 exit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63228213/

相关文章:

python - 在 Python 中运行 shell 内置命令

linux - 安装的 .desktop 文件插入用户的主目录路径

regex - 使用 sed 更改配置的 Bash 脚本

bash - Vi 是 vim 的别名,但退出时代码为 1

Python 返回 "wrong"退出代码

linux - 为什么使用 bash -e 运行时 "let"有时会退出?

Linux系统远程信息

node.js - 在 Node.js 中执行 bash 命令并获取退出代码

bash - 基于 bash 中循环操作的带有错误代码的退出脚本

ruby - 如何在另一个 rake 任务中捕获 rake 任务退出状态