Linuxコマンド一覧

echoコマンド|文字と変数の中身を表示する

__ __ _ _____
\ \ / /__| |_|_ _|__ _ __ _ __ ___
\ \ /\ / / _ \ '_ \| |/ _ \ '__| '_ ` _ \
\ V V / __/ |_) | | __/ | | | | | |
\_/\_/ \___|_.__/|_|\___|_| |_| |_| |_
 
echo を試すためのサンドボックスです。実機のファイルには影響しません。
user@webterm:~/project$
 

echo は渡した文字をそのまま表示するコマンドです。環境変数の中身の確かめ方、クォートの使い分け、`>` でファイルに書き出す書き方を、ブラウザ上のターミナルで打ちながら確認できます。

最終更新: 2026-09-06

書式

echo [オプション] 文字列...

渡した文字列を表示して、最後に改行を1つ足します。

まず打ってみる

$ echo hello world
hello world

引数はスペースで区切られ、表示するときは1つのスペースでつながります。 そのため、スペースを並べても詰まります。

$ echo hello    world
hello world

並びをそのまま出したいときは、クォートで囲みます。

$ echo "hello    world"
hello    world

変数の中身を見る

$ を付けると、シェルが変数の中身に置き換えてから echo に渡します。

$ echo $HOME
/home/user
$ echo $PATH
/usr/bin:/bin:/usr/local/bin

実務でいちばん多いのはこの使い方です。 設定したはずの値が本当に入っているかを、実行する前に確かめられます。

クォートを使い分ける

ダブルクォートの中では変数が中身に置き換わります。 シングルクォートの中では置き換わりません。

$ echo "deployed by $USER"
deployed by user
$ echo 'deployed by $USER'
deployed by $USER

$ の付いた文字をそのまま見せたいときは、シングルクォートを使います。

ファイルに書き出す

> で、表示する代わりにファイルへ書き込みます。

$ echo build ok > result.txt
$ cat result.txt
build ok

>> は末尾に足します。

$ echo second line >> result.txt
$ cat result.txt
build ok
second line

> は上書きです。 同じファイルにもう一度使うと、それまでの中身は消えます。

$ echo overwritten > result.txt
$ cat result.txt
overwritten

記号や改行を出す

-e を付けると、\t(タブ)や \n(改行)が記号として効きます。

$ echo -e "name\tstatus"
name	status

-n を付けると、最後の改行を付けません。

$ echo -n done
done

実務での使いどころ

echo は、確かめるため1行だけ書き足すために打つコマンドです。

場面打ち方
環境変数が入っているか確かめるecho $DATABASE_URL
PATH の中身を見るecho $PATH
設定ファイルに1行足すecho "node_modules" >> .gitignore
スクリプトの途中経過を出すecho "deploying..."
空のファイルではなく1行だけのファイルを作るecho "# project" > README.md

つまずきやすいところ

> は上書きです。 .gitignore.env に1行足すつもりで > を打つと、それまでの中身が消えます。 足すときは必ず >> です。

変数名を間違えてもエラーになりません。

$ echo $NOPE

$ echo "[$NOPE]"
[]

無い変数は空文字として扱われます。 中身が空なのかどうかを見たいときは、角かっこなどで囲んで打つと分かります。

* を展開しているのはシェルです。

$ echo *.txt
notes.txt result.txt

echo*.txt を解釈しているのではありません。 シェルが先に一致するファイル名へ置き換え、その結果を echo が受け取っています。 rm *.txt を打つ前に echo *.txt で確かめられるのは、この順番のおかげです。

秘密の値は echo しないでください。 画面にもコマンド履歴にも残ります。 中身ではなく「入っているかどうか」を知りたいだけなら、[$TOKEN] のように囲んで空でないことだけを確かめれば足ります。

手を動かして覚える

webterm.appこのサイト

learn.webterm.app別のサイト

>_WEBTERM LEARN

WebTerm Learn|1つのコマンドから、使える状態へ

コマンドは単体で覚えるより、実際の作業の流れの中で使うほうが身につきます。順番に積み上げていくコースがあります。

コースを見る

関連するコマンド

cat / printf / export

よくある質問

echo は何に使うコマンドですか?
文字をそのまま表示するコマンドです。実務でいちばん多いのは `echo $PATH` のように、環境変数に何が入っているかを確かめる使い方です。
ダブルクォートとシングルクォートはどちらを使いますか?
変数の中身を出したいときはダブルクォート、`$` の付いた文字をそのまま出したいときはシングルクォートです。ダブルクォートの中では `$USER` が値に置き換わり、シングルクォートの中では置き換わりません。
`>` と `>>` の違いは何ですか?
`>` は上書き、`>>` は末尾に追加です。設定ファイルに1行足すつもりで `>` を使うと、それまでの中身が消えます。
echo -n は何をしていますか?
最後の改行を付けません。既定では出力の最後に改行が1つ入るので、改行を入れたくないときだけ付けます。
変数名を間違えるとどうなりますか?
エラーにはならず、空文字として扱われます。`echo "[$NAME]"` のように囲んで打つと、空なのかどうかが目で見て分かります。