エコ$とは何ですか?する? [コピー]

エコ$とは何ですか?する? [コピー]

私の端末では、一見ランダムな数字が印刷されます127。私はそれが特定の変数の値を印刷していると思い、疑いを確認するために新しい変数を定義しましたv=4。もう一度実行すると、出力がecho $?私に与えられました。0

4が答えになると期待していたので混乱しています。

ベストアンサー1

からman bash

$?最後に実行された前景パイプの終了状態に展開されます。

echo $?最後のコマンドの終了ステータスを返します。あなたが得ることは127(おそらく)いくつかのエラーで終了した最後の実行コマンドの終了状態です。コマンドは終了状態0(ほとんど)で正常に完了すると終了します。前のコマンドがエラーなしで完了した0ため、最後のコマンドが出力を提供しました。echo $v

コマンドを実行すると

v=4
echo $v
echo $?

次のような出力が得られます。

4 (from echo $v)
0 (from echo $?)

また試してみてください:

true
echo $?

あなたは得るでしょう0

false
echo $?

あなたは得るでしょう1

コマンドtrueは何もせずにステータスコードで終了します0falseコマンドは何もせず、失敗を示すステータスコード(ステータスコードなど1)で終了します。

おすすめ記事