シングルクォートとダブルクォートの違いは?
シェルでは、文字列を引用する場合に、シングルクォートとダブルクォートの両方が使用できますが、いくつかの違いがあります。
- 单引号(’ ‘):单引号用于完全引用字符串,其中的任何特殊字符、变量、命令等都不会被解释或扩展。即使字符串中包含双引号,也会被当作普通字符处理。例如:
echo 'Hello $USER' # 输出:Hello $USER
- 双引号(” “):双引号用于引用字符串,其中的特殊字符(如 $、`、\)会被解释和扩展。变量会被替换为其值,命令会被执行,并将结果保存在字符串中。例如:
echo "Hello $USER" # 输出:Hello [用户名]
- 二重引用符と単一引用符の入れ子:引用符は単一引用符の中に二重引用符を入れることも、二重引用符の中に単一引用符を入れることもできます。ただし、入れ子にした引用符の中の特殊文字は解釈されません。例:
echo "Today is 'date'" # 输出:Today is 'date'
echo 'Today is "date"' # 输出:Today is "date"
つまり、シングルクォートは純粋なテキストを表す文字列で使用され、ダブルクォートは、変数やコマンドの置換など、解釈や展開が必要な文字列に使用されます。