linux之shell基础-通配符和其他特殊符号

通配符:

[^]:逻辑非,表示匹配不是中括号内的一个字符,例如:[^0-9]代表匹配一个不是数字的字符。

[]:匹配中括号中任意一个字符。例如[abc]代表一定匹配abc中的一个字符,或者是a,或者是b,或者是c。

*:匹配0个或任意多个任意字符,可以匹配任何内容,

如果之前了解过正则表达式的匹配规则,这个就很好理解了吧。

举例:

[njh@localhost tmp]$ rm -rf * 删除目录下的全部文件,注意哦,删除前一定要确认当前路径,如果不小心把跟/删除了,就完蛋了。

[njh@localhost tmp]$ ls *abc 查看以abc结尾的文件

[njh@localhost tmp]$ ls [0-9]abc

[njh@localhost tmp]$ ls [^0-9]abc

其他特殊符号:

  • '':单引号,在单引号中所有的特殊符号,如$和·(反引号)都没有特殊含义,作为普通字符串输出,

  • "":双引号,在双引号中特殊符号都没有特殊含义,但是“$”、”·”、”\”是例外,拥有调用变量的值、引用命令和转义符的特殊含义。

  • ``:反引号,反引号括起来的内容是系统命令,在Bash中会先执行他,和$()作用一样,不过推荐使用$(),反引号看起来不是很方便,非常容易出错。

  • $():和反引号作用是一样的,用来引用系统命令。

  • #:在Shell脚本中,#开头的行代表注释。

  • $:用于调用变量的值,如需要调用变量name的值时,需要用$name的方式得到变量的值。

  • \:转义符。跟在\之后的特殊符号将失去特殊含义,变为普通字符,比如\$输出$符号,而不再是变量引用。


  • 分享到:


    相關文章: