linux系统转义符有哪些?

linux转义符有哪些

(1)转义字符“\”

如果将“\”放到特殊字符前面,shell就忽略这些特殊字符的原有含义,

把它们当作普通字符对待,例如:

[root@WEBServer ~]#ls
abc?* C:\backup
[root@WEBServer ~]#mv abc\?\* abc
[root@WEBServer ~]#mv C\:\backup backup

上⾯是将abc?*重命名为abc,将C:\backup重命名为backup。因为⽂件

名中包含特殊字符,所以都使⽤了转义字符“\”。

(2)单引号“ ' ”

如果将字符串放到⼀对单引号之间,那么字符串中所有字符的特殊含义将被忽略,例如:

[root@WEBServer ~]#mv C\:\backup backup
[root@WEBServer ~]#mv 'C:\backup' backup

上面两条命令完全等效

(3)双引号“""”

双引号的引用与单引号基本相同,包含在双引号内的大部分特殊字符

可以当作普通字符处理,但是仍有一些特殊字符即使⽤双引号括起来,也

仍然保留自己的特殊含义,比如“$”、“\”和“`”。

[root@WEBServer ~]#str="The \$SHELL Current shell is $SHELL"
[root@WEBServer ~]#str1="\$SHELL"
[root@WEBServer ~]#echo $str
The $SHELL Current shell is /bin/bash
[root@WEBServer ~]#echo $str1
$/bin/bash

从上面的输出可以看出,“$”和“\”在双引号内仍然保留了特殊含义。

[root@WEBServer ~]# str="This hostname is `hostname`"
[root@WEBServer ~]# echo $str
This hostname is WEBServer

上面的输出中,字符“`”在双引号中也保留了自己的特殊含义。

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章