linux 中的单引号 和双引号有什么区别

单引号与双引号的最大不同在于双引号仍然可以保有变量的内容,但单引号内仅能是
       一般字符 ,而不会有特殊符号。我们以底下的例子做说明:假设您定义了一个变量, 
       name=VBird ,现在想以 name 这个变量的内容定义出 myname 显示 VBird its me 这
       个内容,要如何订定呢?  
               
              [root@linux ~]# name=VBird 
              [root@linux ~]# echo $name 
              VBird 
              [root@linux ~]# myname="$name its me" 
              [root@linux ~]# echo $myname 
              VBird its me 
              [root@linux ~]# myname='$name its me' 
              [root@linux ~]# echo $myname 
              $name its me 
        
       发现了吗?没错!使用了单引号的时候,那么 $name 将失去原有的变量内容, 仅为

一般字符的显示型态而已!这里必需要特别小心在意!

说到引号的区别,先要说为什么要用引号,shell命令中有些特殊字符,比如$,^,*等等,如果我们想要把这些特殊字符的功能关掉的话就必须使用引号或者斜杠\,比如 ls "a*",或者ls 'a*',或者ls a\*这就会输出名字为a*的文件,而不是以a开头的文件。
不说斜杠,只说单引号和双引号的区别,它们在shell中的引文的叫法不一样,双引号叫soft quote,单引号叫hard quote,顾名思义,单引号更加严格,比如overawe的例子,对于$符号,单引号一样会关掉它的功能,而双引号不会,它会把它当成变量来替换掉,有兴趣的话你可以比较单引号套双引号的变量和双套单的变量输出的区别,a=1;echo "'$a'" ;echo '"$a"'

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值