LinuxでEchoコマンドを使用する方法

Fatmawati Achmad Zaenuri/

echoコマンド書式設定されたテキストをターミナルウィンドウに書き込むのに最適です。 そして、それは静的なテキストである必要はありません。 これには、シェル変数、ファイル名、およびディレクトリを含めることができます。 また、echoをリダイレクトしてテキストファイルとログファイルを作成することもできます。 方法を見つけるために、この簡単なガイドに従ってください。

エコーは、あなたが繰り返すようにそれを伝えることを繰り返します

ゼウスは美しいニンフと配偶するオリ ある旅行で、彼はエコーと呼ばれる山のニンフに、彼女が彼に従っていれば、彼の妻、ヘラをwaylayするように言いました。 ヘラはゼウスを探しに来て、エコーはヘラを会話の中に保つために彼女ができる限りのことをしました。 最後に、ヘラは彼女の気性を失い、彼女は他の誰かが言った最後の言葉を繰り返すように貧しいエコーを呪った。 ヘラがゼウスに追いついた時にしたことは誰の推測でもあるそして、それはほとんど、echoechoechoには、知らなかった機能や忘れてしまった機能がいくつかある可能性があります。

エコー? エコー!ほとんどのLinuxシステムはechoの2つのバージョンを提供しています。 Bashシェルには独自のechoechoもあります。

次のコマンドを使用すると、二つの異なるバージョンを見ることができます。

type echo
whereis echo

typeechoがシェル組み込みであることを報告します。

答えが見つかるとすぐに、typeはそれ以上の一致の検索を停止します。 そのため、システムに同じ名前の他のコマンドが存在するかどうかはわかりません。 しかし、それはそれが最初に見つけたものを教えてくれません。 そして、それは私たちがそのコマンドを発行するときにデフォルトで使用されるものです。

whereisコマンドは、コマンドラインパラメータとして渡すコマンドのバイナリ実行可能ファイル、ソースコード、およびマニュアルページを検索します。 彼らは別のバイナリ実行可能ファイルを持っていないので、それはシェルビルトインを探しません。 それらはBash実行可能ファイルの不可欠な部分です。p>

whereisecho/binディレクトリにあるバイナリ実行可能ファイルであることを報告します。

そのバージョンのechoを使用するには、コマンドラインで実行可能ファイルへのパスを指定して明示的に呼び出す必要があります。

/bin/echo --version

シェル組み込みは、

/bin/echo --version

シェル組み込みは、

シェル組み込みは、

シェル組み込みは、--versionコマンドライン引数は、それだけで端末ウィンドウでそれを繰り返します:ここに示されている例はすべて、Bashシェルでechoのデフォルトバージョンを使用しています。

ターミナルへのテキストの書き込み

ターミナルウィンドウにテキストの単純な文字列を書き込むには、echoと入力し、表示する文字列を入力します。

echo My name is Dave.

テキストが繰り返されます。 しかし、あなたが実験すると、あなたはすぐに物事が少し複雑になることができることを発見するでしょう。 この例を見てください:

ターミナルウィンドウに

echo My name is Dave and I'm a geek.

>記号が表示され、そこに座って待っています。 Ctrl+Cはコマンドプロンプトに戻ります。 そこで何があったの?

単語”I’m”の一重引用符またはアポストロフィが混乱していますechoechoはより多くの入力を待っていました。 それは、それが待っていた欠落した単一引用符を含むようにさらに入力することを期待していました。

文字列に一重引用符を含めるには、最も簡単な解決策は、文字列全体を二重引用符で囲むことです。

echo "My name is Dave and I'm a geek."

二重引用符で スクリプトでは、echo\を置くだけです(それらの間にスペースはありません)。

echo "My name is Dave and I'm a \"geek.\""

これは私たちのために二重引用符で単語”オタク”をラップします。 これらのバックスラッシュをエスケープした文字の詳細は、まもなく表示されます。

echo

で変数を使用するこれまで、ターミナルウィンドウに定義済みのテキストを書き込んできました。 変数を使用することができますechoより動的で、シェルによって値が挿入された出力を生成します。 このコマンドで単純な変数を定義できます。

my_name="Dave"

my_nameという変数が作成されました。 これは、テキスト”Dave”の値が割り当てられています。”echo$echoに知らせる必要があります。注意点があります。

注意点があります。

文字列を一重引用符で囲んだ場合echoはすべてを文字通り扱います。 変数の名前ではなく、変数の値を表示するには、二重引用符を使用します。

echo 'My name is $my_name'
echo "My name is $my_name"

やや適切に、それは繰り返す価値があります:

  • 一重引用符を使用すると、テキストが
  • 二重引用符を使用すると、変数が解釈され、変数展開とも呼ばれ、値がターミナルウィンドウに書き込まれます。

関連:Bashで変数を操作する方法

echoでコマンドを使用する

echo$を使用し、コマンド全体を括弧で囲む必要があります。

dateコマンドを使用します。 ヒントの1つは、echoechoechoecho構文でなければな

だから、ターミナルウィンドウでこれを試してみてください:そして、dateコマンドから期待されるものを取得していることを満足して、それをechoコマンド:

echo "Today's date is: $(date +%D)"

echoコマンドに統合します。

echo "Today's date is: $(date +%D)"

$は最初の括弧の直前にあります。

echoでテキストを書式設定

-e(バックスラッシュエスケープを有効にする)オプションを使用すると、バックスラッシュエスケープ文字を使用してテキストのレイアウトを変更することができます。 これらは、使用できるバックスラッシュエスケープ文字です。

それらのいくつかを使用して、それらが何をするかを見てみましょう。テキストが新しい行に分割され、\n\t文字が使用された場所にタブが挿入されます。p>

echo -e "Here\vare\vvertical\vtabs"

\n\v\n\v垂直タブは、列ゼロで新しい行を開始しません。 現在の列を使用します。

\bバックスペース文字は、カーソルを一つの文字に戻します。 端末に書き込まれるテキストがさらにある場合、そのテキストは前の文字を上書きします。

“3”は”4″によって上書きされます。

\rechoは現在の行の先頭に戻り、列ゼロからそれ以上のテキストを書き込みます。

“123”文字は”456″文字で上書きされます。

echo -e "123\r456"

“123”文字は”456″文字で上書きされます。

“123”文字は”456″文字で上書きされます。

“123”文字p>

\aアラート文字は、可聴”bleepを生成します。”それはあなたの現在のテーマのデフォルトの警告音を使用しています。p>

echo -e "Make a bleep\a"

-nechoがテキストの最後に改行を追加するのを防ぎます。 コマンドプロンプトは、ターミナルウィンドウに書き込まれたテキストの直後に表示されます。p>

echo -n "no final newline"

ファイルとディレクトリでechoを使用する

echolsecholsとその一連のオプションを使用する方が良いでしょう。

このコマンドは、現在のディレクトリ内のすべてのファイルとディレクトリを一覧表示します:

echo *

このコマンドは、名前が”D”で始まる現在のディレクトリ内のすべてのファイルとディレクトリを一覧表示します。

echo D*

このコマンドは、”。現在のディレクトリ内のデスクトップ”ファイル:

echo *.desktop

うん。 これはecholsを使用します。

echoでファイルに書き込む

echoからの出力をリダイレクトし、テキストファイルを作成するか、既存のテキス

>echoからの出力がファイルの先頭に追加され、以前のコンテンツが上書きされます。

>>echoファイルの最後に追加され、ファイルの既存のコンテンツは上書きされません。/div>

最初のコマンドで新しいファイルが作成され、テキストが挿入されます。 2番目のコマンドは、ファイルの一番下にテキスト行を追加します。 catコマンドは、ファイルの内容をターミナルウィンドウに表示します。もちろん、ファイルに有用な情報を追加するための変数を含めることもできます。 ファイルがログファイルの場合は、タイムスタンプを追加することができます。 次のコマンドでそれを行うことができます。

datedatecatdatestampとtimestampの両方が追加されたことを示しています。関連:linuxではstdin、stdout、およびstderrとは何ですか?

それはechoのレパートリーです

単純なコマンドですが、不可欠です。 それが存在しなかった場合、我々はそれを発明する必要があります。結局のところ、ゼウスのペテンはいくつかの良いことをしました。



コメントを残す

メールアドレスが公開されることはありません。