Linux shell脚本变量单引号和双引号的区别以及变量扩展问题
单引号可以防止任何变量扩展。双引号可以防止通配符扩展但它允许变量扩展。
shellrun.sh
#!/bin/sh
#测试单引号‘’ 双引号“”的区别
#单引号更严格一些。它可以防止任何变量扩展。双引号可以防止通配符扩展但允许变量扩展。
echo $SHELL
echo "$SHELL"
echo '$SHELL'
结果:
yanzuoguang@yanzuoguang-linux-1:~$ ./shellrun.sh
/bin/bash
/bin/bash
$SHELL
一种防止这种扩展的方法,那就是使用转义字符——反斜杆
shellrun1.sh
#!/bin/sh
#测试单引号‘’ 双引号“”的区别
#单引号更严格一些。它可以防止任何变量扩展。双引号可以防止通配符扩展但允许变量扩展。
#一种防止这种扩展的方法,那就是使用转义字符——反斜杆
echo \$SHELL
echo "\$SHELL"
echo '$SHELL'
结果:
yanzuoguang@yanzuoguang-linux-1:~$ ./shellrun1.sh
$SHELL
$SHELL
$SHELL
本文由 创作,采用 知识共享署名4.0 国际许可协议进行许可。本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为: 2021/01/06 01:50