文字列を画面に表示(標準出力へ出力)する。
「$」から始める文字列は環境変数として扱われるので、環境変数の中身が表示されることになる。
$ echo $CLASSPATH $ echo ${CLASSPATH}
通常なら、「\」はシェルが解釈して直後の文字列になってしまう。ダブルクォーテーションでくくったり「\\」としたりしても「\」が表示されるだけだが、「-e」オプションを付けるとC言語のようなコントロール文字として解釈される。
$ echo a\nb anb $ echo a\\nb a\nb
$ echo -e a\\nb a b $ echo -e "a\nb" a b $ echo -e a\\012b a b
echoを使って漢字を表示したい場合、次のようなやり方で代用する。UNIXで漢字を使う場合はたいていEUCだし、なおかつechoでEUC以外のを表示しようなんて思うことはまず無いだろうけど…。
例)sjis.shの中身 #!/bin/sh echo あいうえお echo かきくけこ | nkf echo さしすせそ | kcc
$ ./sjis.sh
△Θ ←そのままだと文字化け
かきくけこ
さしすせそ