web-dev-qa-db-ja.com

プロセスが終了したときの戻りコードと、通常文書化されている値はどこにあるかをどのように判断しますか?

プロセスが実行されて終了すると、ゼロ以外のステータスが返されます(個人的にはリターンコードという用語が好きです)。またはゼロステータスでさえ、値がそこにあることを知っています(主に、C++プログラミングを実行し、main()メソッドの最後で値を返すことができることを知っているためです...しかし、私が次のようなものを実行します:

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

echofuserプロセスから返されたステータス値が0の場合にのみ出力され、そうでない場合はechoがすべて一緒にスキップされることを知っています。

「指定されたファイルのいずれにもアクセスされない場合、または致命的なエラーが発生した場合、fuserはゼロ以外のリターンコードを返します。」

では、この戻りコードを表示して、その値を知るにはどうすればよいですか?スクリプトのようにfuser-silentと一緒に実行している場合は、戻りコード/ステータスの値を知っておくことが重要であると思われるため、ファイルとの違いがわかります。アクセスされておらず、実際の致命的なエラーです。

また、プロセスのリターンコード/ステータスが文書化されているマニュアルページに共通の場所があり、値が何を意味するのかを確認できますか?または、リターンコードがどうあるべきかについての基準があるドキュメントはありますか?

1
leeand00

特別なパラメータ$?を使用して、最後に実行されたコマンドの戻りコードにアクセスできます。 「0」が成功でゼロ以外が失敗である以外の戻りコードに関する文書化された標準はありません(少なくとも広く採用されているものはありません)。実行している特定のコマンドのmanpageを確認する必要があります。

6
jordanm