文档介绍:第9章 bash shell的使用—正则表达式
通配符与特殊符号
* - 通配符,代表任意字符(0到多个)? - 通配符,代表一个字符# - 注释\ - 跳转符号,将特殊字符或通配符还原成一般符号| - 分隔两个管线命令的界定; - 连续性命令的界定~ - 用户的根目录$ - 变量前需要加的变量值
通配符与特殊符号
! - 逻辑运算中的"非"(not)/ - 路径分隔符号>, >> - 输出导向,分别为"取代"与"累加"' - 单引号,不具有变量置换功能" - 双引号,具有变量置换功能` - quote符号,两个``中间为可以先执行的指令() - 中间为子shell的起始与结束[] - 中间为字符组合{} - 中间为命令区块组合
通配符与特殊符号
最常用的*、?、[]、和`
ls test*
ls test?
ls test???
cp test[1-5] /tmp
cp test[!1-5] /tmp
cp *[A-Z]* /tmp
ls –lda /etc/*[0-9]*
cd /lib/modules/`uname -r`/kernel/drivers
[1-5]表示一个字符,但范围是1-5
知识点
正则表达式(Regular Expression,RE)
sed工具
扩展正则表达式
正则表达式
是一种处理字串的方法,它以行为单位进行字串的处理,通过一些特殊符号的排列组合,可以让使用者轻易的达到搜寻/取代/删除某特定字串的处理程序
具有多种辅助工具,如撷取字串的指令grep、文本编辑器vi、批编辑器sed和awk、linux下的编程语言perl、以编辑器为主干的开发环境emacs等
正则表达式语法支持情况
正则表达式
正则表达式是个能描述一类字符串的模式。如果一个字符串能用某个正则表达式来描述,我们就说这个字符和该正则表达式匹配(Match)。
正则表达式作用
系统管理员更方便的管理主机
邮件服务器过滤垃圾邮件
正则表达式不仅适用于linux,多种编程语言中也可以使用到它,因为它实际上是人们对于某种规律的表达方式。
grep
grep pattern [file...]
grep 搜索字符串[filename]
grep 正则表达式[filename]
在文件中搜索所有 pattern 出现的位置, pattern 既可以是要搜索的字符串,也可以是一个正则表达式.