shell中的特殊字符:

*  :代表零个或多个任意字符;

? :只代表一个任意字符

#  :这个符号在Linux中是注释说明的意思,即#后面的内容会被Linux自动忽略!

\  :脱意字符,将后面的特殊符号还原为普通字符

|  :管道符,它的作用是将符号前面的命令的结果丢给符号后面的命令。这里提到的后面的命令并不是所有的命令都可以的,一般针对文档类的操作命令比较常用,正则表达式的必备工具!

$  :除了用于变量前面的标识符外,还有一个妙用就是和“!”结合起来使用,组成“!$"表示上一条命令中的最后一个变量!

; :在一行中运行两个及两个以上的命令时,只需在两条命令之间添加一个分号即可!

&  :如果想把一条命令放入后台执行,则需要加上这个符号,通常用于命令执行时间比较长的情况下!

[]  :中间为字符组合,代表中间字符中的任意一个!

正则中的特殊符号

.  :表示任意一个字符

*  :表示零个或多个*前面的字符

.* :表示任意个任意字符(包括空行)

+  :+号表示一个或多个+前面的字符

? :表示零个或一个?前面的字符

其中“+”和“?”grep不支持,只有egrep才支持!若想在grep中使用必须使用反义字符!