您如何知道进程退出时的返回码是什么以及该值通常记录在哪里?

lee*_*d00 1 process fuser

如果一个进程运行并退出它返回一个非零状态(我个人更喜欢术语返回代码);甚至零状态我知道该值在那里(主要是因为我已经完成了 C++ 编程并且我知道你可以在你的main()方法结束时返回一个值......但也因为如果我运行类似的东西:

fuser -s ./myfile.txt && echo "a process is accessing your file

我知道echo如果从fuser进程返回的状态值是0,则唯一打印,如果不是,echo则一起跳过,因为:

“如果没有访问任何指定文件或发生致命错误,fuser 将返回一个非零返回码。”

现在我如何显示这个返回码来知道它的价值?因为如果你正在运行fuser使用-silent,如在脚本,它似乎重要的是知道的返回码/状态值,所以我可以告诉大家,不被访问文件和实际致命错误之间的区别。

此外,手册页中是否有一个共同的地方记录了进程的返回代码/状态,以便我可以看到该值可能意味着什么?或者是否有一份文件对返回代码应该是什么有标准?

jor*_*anm 6

您可以访问使用特殊参数执行的最后一个命令的返回码$?。除了“0”是成功和非零是失败之外,没有记录标准(至少没有被广泛采用的返回码)。您必须检查manpage正在运行的特定命令的 。