`` 反引号 " "双引号 ' '单引号
`` 反引号用来做命令替换, 首先,` ` 基本上可用在全部的 unix shell 中使用,而 $( ) 並不見的每一种 shell 都能使用
[root@serverln tmp]# echo $(date)
Tue Nov 11 11:26:46 CST 2014
[root@serverln tmp]# echo `date`
Tue Nov 11 11:26:59 CST 2014
" "双引号:有具有变量置换功能 ,可以引用除$ ` \ 以外的任意字符或字符串,对于shell来说“$变量引用” “ ` 变量替换” “ \ 转义字符” 它们都有特殊意义
[root@serverln dev]# echo "`date`"
Wed Nov 12 10:14:14 CST 2014
[root@serverln dev]# username=jake
[root@serverln dev]# echo "$username" # 双引号不会对$有任何影响
jake
[root@serverln dev]# echo "\$username" # 反斜杠可以可以让元字符按原意输出来
$username
[root@serverln dev]# user="you name" # 当中间有空格的字符串必须用双引号
[root@serverln dev]# echo $user
you name
`` 反引号用来做命令替换, 首先,` ` 基本上可用在全部的 unix shell 中使用,而 $( ) 並不見的每一种 shell 都能使用
[root@serverln tmp]# echo $(date)
Tue Nov 11 11:26:46 CST 2014
[root@serverln tmp]# echo `date`
Tue Nov 11 11:26:59 CST 2014
" "双引号:有具有变量置换功能 ,可以引用除$ ` \ 以外的任意字符或字符串,对于shell来说“$变量引用” “ ` 变量替换” “ \ 转义字符” 它们都有特殊意义
[root@serverln dev]# echo "`date`"
Wed Nov 12 10:14:14 CST 2014
[root@serverln dev]# username=jake
[root@serverln dev]# echo "$username" # 双引号不会对$有任何影响
jake
[root@serverln dev]# echo "\$username" # 反斜杠可以可以让元字符按原意输出来
$username
[root@serverln dev]# user="you name" # 当中间有空格的字符串必须用双引号
[root@serverln dev]# echo $user
you name
' '单引号:没有变量替换功能,将内容原样输出
[root@serverln dev]# echo 'ls'
ls
[root@serverln dev]# echo '`date`'
`date`
[root@serverln dev]# echo '\`date`'
\`date`