bashでの「"」「'」「`」の扱いの違い

bashでは、

  • "」(ダブルクォート
  • '」(シングルクォート
  • `」(バッククォート、アクサングラーブ

のそれぞれの扱いに違いがある、という改めてのメモ書き。


あれこれ書くより、実際に違いを見たほうが早い、ということで以下は、変数"d"に"date"という値を設定し、この変数を上記それぞれで囲み、echoを実行した結果が以下。

nami@ubuntu:~$ d="date"
nami@ubuntu:~$ echo "$d"
date
nami@ubuntu:~$ echo '$d'
$d
nami@ubuntu:~$ echo `$d`
2010630日 水曜日 21:23:33 JST
  • 「"」は変数の中に格納されている文字列を表示(展開)
  • 「'」は囲んだ文字列をそのまま表示(文字列定数)
  • 「`」は変数の中身をコマンドとして実行


入門bash 第3版

入門bash 第3版