单引号,双引号,无引号
单引号:所见即所得
双引号: 1、把双引号的所有内容都输出出来
2、如果中命令(要反引下)、变量、特殊转义符等,会先把变量、命令、特殊转义符解析出结果再输出最终内容。
无引号: 与双引号基本相同,连续数字不用加任何引号
建议:脚本中普通字符串尽量双引号,单纯数字可以不用加引号
a=192
a=192-$a
b='192-$a'
c="192-$a"
echo "a=$a" =》 a=192-192
echo "b=$b" =》 b=192-$a
echo "c=$c" =》 c=192-192-192
$( ) 与 ` ` (反引号)
在 bash shell 中,$( ) 与 ` ` (反引号) 都是用来做命令替换用(command substitution)的。
[root@dev yum.repos.d]# echo "Today is `date +%Y-%m-%d`"
Today is 2019-06-25
[root@dev yum.repos.d]# echo "Today is $(date +%Y-%m-%d)"
Today is 2019-06-25
[root@dev /]# ETT=123
[root@dev /]# awk 'BEGIN {print $ETT}'
[root@dev /]# awk 'BEGIN {print '$ETT'}' AWk特殊用法
123
[root@dev /]# awk 'BEGIN {print "$ETT"}'
$ETT