Shell 中变量与引号的用法:单引号与双引号的核心区别
在 Shell 脚本中,单引号(')和双引号(")是处理字符串和变量时的重要符号,二者的核心区别在于是否对内容进行解析。理解它们的差异是编写正确 Shell 脚本的基础。
双引号("):支持解析与替换
双引号会保留字符串的原始格式,同时对其中的变量、命令和转义字符进行解析(替换为实际值),是日常使用中最频繁的引号类型。
解析变量(变量替换)
双引号中的变量(以 $ 开头)会被替换为变量的值:
1 | name="Shell" |
解析命令执行结果(命令替换)
双引号中通过 command 或 $(command) 嵌入的命令,会被替换为命令的执行结果:
1 | echo "当前目录: $(pwd)" # 输出:当前目录: /home/user |
解析转义字符
双引号中支持部分转义字符(如 \n 换行、\t 制表符、\$ 保留 $ 符号等):