常用的转义字符
Posted 疯狂110
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用的转义字符相关的知识,希望对你有一定的参考价值。
Shell解释器为了能够更好的理解您想表达的意思,还提供了特别丰富的转义符号来帮助程序员处理输入的特殊数据,常见的转义字符包括有:反斜杠(\\)的作用就是转义后面的一个字符变为单纯的字符串,单引号(\'\')则是转义其中所有的字符为单纯的字符串,而双引号("")是保留其中的变量属性不转义,反引号(``)则是把其中的命令执行后返回一个结果。
例如咱们先定义一个名称为PRICE的变量并赋值为5,然后通过双引号括起来输出字符串与变量结合的结果:
[root@linuxprobe ~]# PRICE=5 [root@linuxprobe ~]# echo "Price is $PRICE" Price is 5 [root@linuxprobe ~]# echo "Price is $$PRICE" Price is 3767PRICE
原本刚刚是希望能够进一步输出“Price is $5”即价格是五美元的字符串信息,但碰巧美元符号与变量提取符号冲突了,因此输出的并不是预想的信息。需要用转义符把第一个$符号转换成单纯的字符串,再或者把整段都转义成单纯的字符串吧(当然这个只是让您看下效果,并不符合实验需要):
[root@linuxprobe ~]# echo "Price is \\$$PRICE" Price is $5 [root@linuxprobe ~]# echo \'Price is \\$$PRICE\' Price is \\$$PRICE
好啦,咱们对转义符学习的非常顺利,但最后一个您可能看到结果时会觉得很无用,因此暂且先不用管具体的使用场景,就当作是提前为第4章的SHELL编程知识学习做一点小小的铺垫吧。如果只需要某个命令的返回输出值时,就可以用像`命令`这样用反引号括起来的命令格式来达到效果,例如通过反引号与uname -a命令结合通过返回值来查看下本机版本和内核信息吧:
[root@linuxprobe ~]# echo `uname -a` Linux linuxprobe.com 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@fyc ~]# echo "uname -a"
uname -a
以上是关于常用的转义字符的主要内容,如果未能解决你的问题,请参考以下文章