説明
<バック・スラッシュ(\)>
・・・メタ文字を表示したい場合は,メタ文字の前にバック・スラッシュ(\)を付ける。・・・
たとえば,「$100」と表示したい場合は,
$ echo \$100
(出力結果)$100
のようにする。また,複数のメタ文字がある場合は,それぞれのメタ文字の前にバック・スラッシュを付ける。例えば,「A&B : $10」と表示したい場合は,「&」と「$」,スペースのそれぞれの前にバック・スラッシュを付ける。
$ echo A&B\ :\ \$10
(出力..)A&B : $10
バック・スラッシュ自身を表したい場合はバック・スラッシュを2つ並べて記述する。
$ echo \
(出力..)\
<シングル・クォーテイション(')>
・メタ文字を多く利用する場合は,多数のバック・スラッシュを使うことになり,見にくくなってしまう。シングル・クォーテイション(')記号でくくると,くくられた中のメタ文字は特殊な意味を持たなくなり,スクリプトもすっきりと表記できる。
((')記号でくくると,くくられた中のメタ文字は特殊な意味を持たずにただの文字列になる)
たとえば,「A&B : $10」であれば,
$ echo 'A&B : $10'
A&B : $10
とすればよい。
また,シングル・クォーテイションのみは特殊な意味を持っているため,シングル・クォーテイション内にシングル・クォーテイションを記述することはできない。
ダブル・クォーテイション(")
・ダブル・クォーテイション(")にくくられた場合も,メタ文字は特殊な意味を持たなくなる。ただし,以下のメタ文字については特殊な意味を保持し続ける。
↓
" $ ` \
これらのメタ文字を表記したい場合は,メタ文字の前にバック・スラッシュを付ける必要がある。たとえば,「My "Fantastic" Car : $2000」と表記したい場合は,
$ echo "My \"Fantastic\" Car : \$2000"
My "Fantastic" Car : $2000
とする。
<エスケープ・シーケンス>
コンピュータでは改行やタブといった目で見える形で表せない文字がある。これらの文字を取り扱いたい場合は,エスケープ・シーケンスを利用する。エスケープ・シーケンスには以下のようなものがある。
エスケープ・シーケンス 意味
\a ベルを鳴らす
\b バック・スペース
\e エスケープ文字
\f フォーム・フィールド文字
\n 改行
\r 復帰
\t 水平タブ
\v 垂直タブ
\数字 指定したASCIIコードの文字。数字は8進数3桁で表記する
\x数字 指定したASCIIコードの文字。数字は16進数3桁で表記する
エスケープ・シーケンスを利用すれば,1行で複数行を表すこともできる。
$ echo -e "Fukuda\t: PlanA\nAso\t: PlanB"
Fukuda : PlanA
Aso : PlanB
この場合は,エスケープ・シーケンスにタブ「\t」と改行「\n」を利用している。また,echoでエスケープ・シーケンスを使う場合は「-e」オプションを付ける。