1、单引号、双引号用于用户把带有空格的字符串赋值给变量的分界符。

  [root@localhost sh]# str="Today is Monday"
  [root@localhost sh]# echo $str
  Today is Monday
  如果没有单引号或双引号,shell会把空格后的字符串解释为命令。
  [root@localhost sh]# str=Today is Monday
  bash: is: command not found

 

2、单引号和双引号的区别。单引号告诉shell忽略所有特殊字符,而双引号忽略大多数,但不包括   $     \     `

双引号中的'$'(参数替换)和'`'(命令替换)是例外,所以,两者基本上没有什么区别,除非在内容中遇到了参数替换符$和命令替换符`。

如:num=3

echo ‘$num’   

 $num

echo “$num”
3