Linux的shell特殊字符

来源:互联网 发布:淘宝大码女装外套 编辑:程序博客网 时间:2024/05/16 09:39

1、通配符

 通配符用于模式匹配,如文件名匹配,路径名搜索,字符串查找

  <1>一般通配符

*星号:匹配任意字符的0次或多次出现,例如:“f*”可以匹配以f开头的任意字符串

?问号:匹配任意一个字符,例如:“f?”可以匹配f1,fa,fb等,只代表后面的一位字符

[字符组]:匹配该字符组所限定的任何一个字符,例如:f[abcd]可以匹配fa,fb,fc,fd也可 以相同地表示为f[a-d]

感叹号!

  <2>模式表达式

*(模式表):匹配给定模式表中0次或多次出现的“模式”,各个模式之间用“|”分开,例如: file*(.c|.o)将匹配文件file.c,file,file.o,file.c.c,file.c.o,file.o.o,file.o.c等

+模式:匹配给定模式表中一次或多次出现的“模式”,各个模式之间以“|”分开,例如:

 file+(.c|.o)匹配文件file.c,file.o,file.c.o,file.c.c等

(模式表):匹配模式表中任何一种0次或1次出现的“模式”,各个模式之间用“|”隔开,例 如:file?(.c|.o)只匹配file,file.c和file.o

@(模式表):仅匹配模式表中给定一次出现的“模式”,各模式之间以“|”隔开,例如: file@(.c|.o)匹配file.c和file.o

!(模式表):除给定模式表中的一个“模式”w外,它可以匹配其他任何东西

注意:模式表达式的定义是递归的,每个表达式中都可以包含一个或多个模式

2、引号

单引号:由单引号括起来的字符作为普通字符出现,包括特殊字符

双引号:由双括号括起来的字符作为普通字符,除了:$表示变量替换,即用预先指定的变量值 代替$和变量;倒引号`表示命令替换;反斜线\仅当其后的字符是$和`,以及\和换行符之一的时 候,\才是转义字符

倒引号`:倒引号括起来的字符串被shell解释为命令行,在执行时,shell会先执行该命令行, 并以它的标准输出结果取代整个倒引号部分

3、输入/输出重定向符

输入重定向符<:把命令或可执行程序的标准输入重新定向到指定文件

输出重定向符>:把命令或可执行程序的标准输出重新定向到指定文件,该命令的输出不是显示在 屏幕上,而是写入指定文件中

输出附加定向符>>:把命令或可执行程序的输出附加到指定文件的后面,而该文件原有的内容不 会被破坏,如果指定的文件不存在,就新建该文件

即时文件定向符:由重新定向符<<、一对标记符以及若干输入行组成,把shell程序的输入行重 新定向到一个命令

与文件描述符有关的重定向

0 0
原创粉丝点击