单引号和双引号都能关闭shell对特殊字符的处理。不同的是,双引号没有单引号严格,单引
号关闭所有有特殊作用的字符,而双引号只要求shell忽略大多数,具体的说,就是①$美元符号②`反引号③/反斜杠,这3种特殊字符不被忽略。
不忽略美元符号意味着shell在双引号内部也进行变量名替换。
luther@gliethttp:~$ a='luther.gliethttp'
luther@gliethttp:~$ echo $a
luther.gliethttp
luther@gliethttp:~$ echo "$a"
luther.gliethttp
luther@gliethttp:~$ echo '$a'
$a
luther@gliethttp:~$ echo '`pwd`'
`pwd`
luther@gliethttp:~$ echo "`pwd`"
/home/luther
luther@gliethttp:~$ echo "\"
> "
"
luther@gliethttp:~$ echo '\'
\
阅读(2319) | 评论(0) | 转发(0) |