UNIX/Linuxの部屋 echoコマンドの使い方

TOP UNIX/Linuxの部屋 UNIX/Linuxコマンド一覧 用語集 新版 由来/読み方辞書 環境変数マニュアル Cシェル変数 システム設定ファイル システムコール・ライブラリ ネットワークプログラミングの基礎知識 クラウドサービス徹底比較・徹底解説




コマンド echo 文字列を表示 このエントリーをはてなブックマークに追加

最終更新


UNIX/Linux の echo コマンドは引数で与えた文字列を標準出力に出力するだけのコマンドである。シェルの内部コマンドの echo と、/bin/echo が存在することに注意。



echo コマンドの基本的な使い方
echo コマンドは、引数で指定した文字列を表示する。
% echo abc
abc
複数の引数を与えると、すべての引数を 1行で表示する
% echo abc def
abc def
メタキャラクタや連続した空白を含む場合はダブルクォートで囲む:
% echo "*hoge fuga    [??]"
*hoge fuga   ??
複数行の出力を行う場合は、echo コマンドを複数回書く。
% echo abc; echo def
abc
def

echo コマンドでシェル変数を表示する
シェル変数を表示 (sh・bash の場合):
% var=123
% echo $var
123
シェル変数を表示 (csh・tcsh の場合):
% set var=123
% echo $var
123

echo コマンドで環境変数を表示する
環境変数を表示
% echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:...

echo コマンドの改行抑止
echo コマンドは自動的に最後に改行を出力する。この改行表示をやめたい場合、2種類の方法があり、統一したやり方は存在しない。

sh・bash・csh・tcsh (デフォルト挙動) や、FreeBSD の /bin/echo・Linux の /bin/echo では -n オプションを付ける。
% echo -n abc; echo def
abcdef

Solaris などの SysV 系の sh・csh や /bin/echo は \c で改行を抑止する。
% echo 'abc\c'; echo def
abcdef

tcsh の内部 echo について、デフォルトは -n が有効であるが、シェル変数 echo_style で指定することで \c での改行抑止も有効にすることもできる。

改行について悩みたくない場合は、echo コマンドではなく printf コマンドを使うこと。

tcsh の内部コマンドである echo コマンドで改行を抑止する方法については、シェル変数 echo_style を参照。

関連コマンド
文字列を出力する方法として、printf コマンドを使う手もある。

echo コマンドは xargs コマンドと組み合わせても便利である。