web-dev-qa-db-ja.com

ターミナルで単一のアポストロフィを入力するとどうなりますか?

誤って'を1つ入力しましたが、結果としてこれが表示され、'をもう一度入力した後に終了しました。

'
>
> '


: command not found

これは何をしますか?

4
Natus Vincere

文字列リテラル の記述を開始しました:'と次の'の間のすべては、改行、スペース、その他の文字を含め、シェルによって単一の「もの」として扱われます。ここでは、2つの改行を含む文字列を記述しました。

つまり、行の最初の部分は\n\n(2つの改行)でした。行の最初のものが常に実行するコマンドであるため、シェルはその名前のコマンドを探しました。 \n\nというコマンドがないため、「コマンドが見つかりません」というエラーが表示されます。

2行目と3行目の冒頭の>プロンプトは、引用符で囲まれた文字列の書き込みが完了するのをシェルが待機しており、まだ完了していないことを通知していることを意味します。シェルは、その状況での$PS3の値を出力します。デフォルトでは>です。

9
Michael Homer