ターミナルで '(一重引用符)は何をしますか?


8

<enter>ターミナルで'(一重引用符、ボタンの横)と入力してEnterキーを押すと、>プロンプトが表示されます。これは正確には何ですか、それは何のために使用されますか、またどのタイプのコマンドをここに入力できますか?

<Ctrl-C>はそれから抜け出すことができますが、それは私が得たすべてです。

回答:


6

端末は1行のコードしか受け入れません。実際、コードは(bashスクリプトプログラミング言語であるため)複数の行で記述できます。

たとえば、次のように書いた場合:

while true; do <enter>

それは>あなたのケースに示したものとまったく同じように表示されます。より多くのコマンドを入力できます。次のように入力すると、

echo "Cake is a lie" <enter>
sleep 1              <enter>
done                 <enter>

コードの実行を開始します(この場合、1秒ごとに文字列を出力するwhileループです)。これにより、次のように1行のコードで記述せずに小さなプログラムを構築できます。

while true; do echo "Cake is a lie"; sleep 1; done

これは、この場合はそれほど問題ではありませんが、他の場合には(より多くのコードを記述して)問題になる可能性があります。

そのため、通常は複数行のコードを記述するために使用されます。あなたの機会に、シェルは'コード内に偶数の数がないことを認識し、これはいかなる場合でも機能しませんでした(同じことがにも当てはまります")。したがって、残したものを完成させるために、より多くのコードを記述しましょう。

たとえば、次のコマンドを実行したとします。

echo "Cake is a <enter>

その後、続行できます。実際、次のことができます。

lie"            <enter>

通常は出力されます:

Cake is a
lie

なるほど、エラーメッセージが表示される代わりに、コマンドをわかりやすく終了する機会が与えられます。この「モード」に名前はありますか?
Insperatus 2012

2
私はそれが特別な名前を持っているとは思わない、それは通常「二次プロンプト」と呼ばれる
hytromo
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.