linux 单引号,双引号,反引号的小总结。
还是老惯例说说事情的起因,由于最开始对linux下面的各种引号并不是特别敏感,导致有一天我在添加数据库字段的时候出现的错误,当时出现错误的原因是我在最外层使用了单引号进行包裹,然后一句话里面需要转意的地方无法被转意导致了错误。
下面还是从单引号开始介绍起吧
单引号:
为了保护文本不被转换,除了她本身,就是说除去单引号本身之外,在单引号内的所有文本都是原样输出。
echo 'export'
得到结果
export
echo '$export'
得到结果
$export
从这里看到export并没有被执行输出。也没有打印出相关信息
再看一个例子
echo ''''''''
得到结果
什么都没有,上面已经提到过了单引号无法输出自己本身.
双引号:
为了包含文字或者函数段,除了本身,反引号内的函数,$开头的变量和\开头的转意字符以外,其余的都可以直接输出
echo "export" 得到结果 export echo "$export" 得到结果 export
反引号:
重头戏来了 反应号的使用其实比较有趣,反引号可以让被包裹的东西保持函数转换或执行被包裹的语句 让我们直接看例子。
echo "export" 得到结果 export echo "$export" 得到结果 export echo "`export`" 得到结果 一大坨export的东西。。
由此可以看出 反引号能把反引起来的部分执行之后 再输出。是不是很厉害呢。
更多的技巧可以再去多多探索一下。