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別のサイト

cat / printf / export