c++ - 如何在 bash 文件异常退出时捕获异常?

标签 c++ linux bash exception exit

这里我得到一个 bash 文件 b.sh:

#!/bin/sh

if [ ! -f somefile.txt ]; then
       ..................
fi

在bash文件中,我尝试检查是否存在名为“somefile.txt”的文件,如果不存在,我会认为它是一个错误并退出。

然后我用 C++ 运行这个 bash 文件:

::system("sh b.sh")

当“somefile.txt”不是找到了。

最佳答案

放:

exit 1

在脚本中——按照惯例,任何非零退出代码都被视为失败。

在 C++ 代码中,system() 返回命令的终止状态。请参阅 wait() 的文档有关解释这个的详细信息,或者如果您想知道是否有任何错误,您可以只检查它是否非零。

关于c++ - 如何在 bash 文件异常退出时捕获异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19100128/

相关文章:

c++ - 更改相邻顶点的值并删除自循环

C++11 std::threads 并等待线程完成

c# - 使用接口(interface)在 C++ 中使用通用容器的最佳方法是什么(即等同于在 C# 中将 IEnumerable 作为参数)

linux - 无法让 Airflow 在 Linux 服务器上运行

linux - shell脚本if语句问题

python - 如何检测文件中的 DOS 换行符?

c++ - 如何使用 emplace 在 C++ 中添加 map ?

linux - 逐 block 处理日志,每个 block 包含多行

linux - x86_64-conda_cos6-linux-gnu-gcc : not found

linux - 将 stderr 和 stdout 重定向到 Bash 中的文件的不同方法?