GNU/Linux >> Linux の 問題 >  >> Ubuntu

`$?`?それは変数ですか?

質問は非常に簡単です。 $?を使用して、前のコマンドの終了コードを取得できます。 。しかし、それは正確には何ですか?

_以外の変数の名前に特殊文字を含めることはできないため、変数ではないと思います。 。

foo?foo=10

次のエラーが発生します:foo?foo=10: command not found

それで、それが変数でない場合、それは何ですか?他にそのようなものはありますか?

承認された回答:

それはなんですか?

$? コマンド、関数、またはスクリプト自体の終了ステータスを格納する組み込み変数です。

$? 最後に実行されたコマンドの終了ステータスを読み取ります。関数が戻った後、$? 関数で最後に実行されたコマンドの終了ステータスを示します。これは、関数に「戻り値」を与えるBashの方法です。 を返します 成功した場合、または1 - 255の範囲の整数 エラー時。

他にも同じようなものはありますか?

はい、bashにはそのような組み込み変数がいくつかあります。ここにリストが表示されます。
参照:http://www.tldp.org/LDP/abs/html/exit-status.html


Ubuntu
  1. 変数に格納されているコマンドを実行するにはどうすればよいですか?

  2. コマンドの出力をシェル変数に割り当てる方法は?

  3. コマンドの出力をシェル変数に保存しますか?

  1. |ターミナルコマンドで?

  2. コマンドが失敗した場合の終了方法

  3. コマンドを履歴に残さずに実行する

  1. Linuxコマンドの出力を変数に割り当てる方法

  2. バッシュ演算子の違い[[Vs[Vs(Vs((?

  3. Bashで合法的なコマンドの前に変数を設定するのはなぜですか?