bash正则表达式】的更多相关文章

bash 正则表达式匹配,一行文本中  “包含 ABC”  并且  “不包含 XYZ” A文件: XXXX ABC XXX4444444444444444XXXX ABC XXX XYZ6666666666666666666666 得到B文件:XXXX ABC XXX4444444444444444 sed -n '/ABC/{/XYZ/!{p;n;p}}' A >B  …
星号*: 匹配它前面的字符串或正则表达式任意次(包括0次). 比如:* 可能匹配的字符串有:... ...... 句号.: 匹配除换行符之外的任意一个字符. 比如:"112.",将匹配112+至少一个字符 可能匹配的字符串有:..112abc. ......,但不匹配112 插入符号^: 匹配一行的开始,但有时依赖于上下文环境,可能表示否定正则表达式中一个字符串的意思. 比如:“^abc”只匹配行首为abc的字符串 美元符$: 在一个正则表达式的末尾,匹配一行的结尾. 比如:"…
本节内容 1.  什么是正则 2.  grep 3.  sed 4.  awk 5.  其他补充 一  什么是正则 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法 或者说: 正则就是用来描述一类事物的规则 生活中处处都是正则: 比如我们描述:4条腿  你可能会想到四条腿的动物或者桌子.椅子等 继续描述:4条腿,活的 就剩下四条腿的动物这一类了 在Linux中,通配符是由shell解释的,而正则表达式则是由命令解释的 下面我们就为大家介绍三种文本处理工具/命…
1.顺序结构体 命令从上往下顺序执行 2.分支结构体 1)判断真假 test 表达式 或者 [ 表达式 ](必须有空格) 真返回0,假返回1 test的别名是[, 参数是] 判断表达式 记忆 解释 !表达式     表达式1 -a 表达式2 and 相与 表达式2 -o 表达式2 or   -z string zero string为空字符串,则返回真0 -n string not zero   string1 = string2   两个字符窗相等,返回0 string1 != string2…
工作中需要用bash的地方不是很多,之前只是大致了解过,每每用到都得去网上查询,遂决定以后将所用到的正则用法在这里统一收藏,便于学习. 1.echo 'inet addr:10.1.1.1  Bcast:10.2.1.1  Mask:255.255.255.0'|sed -n 's/^.*addr:\(10.*\) [[:space:]]Bcast:.*$/\1/p'     结果:10.1.1.1 参考:       http://lht821008.blog.163.com/blog/sta…
第10章 vim程序编辑器 可以将vim看做vi的进阶版本,vim可以用颜色或底线等方式来显示出一些特殊的信息. 为何要学习vim?因为: a. 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在: b. 很多个别软件的编辑接口都会主动呼叫 vi (例如未来会谈到的 crontab, visudo, edquota 等指令): c. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计: d. 因为程序简单,编辑速度相当快速. v…
BASH中的通配符(wildcard) *:任意长度的任意字符. ?:任意单个字符 []:匹配范围 [^]:排除匹配范围 [:alnum:]:所有字母和数字 [:alpha:]:所有字母 [:digit:]:所有数字 [:lower:]:所有小写字母 [:upper:]:所有大写字母 [:blank:]:空白字符和TAB制表符 [:space:]:包括空白字符.TAB制表符(\t).换页(\f) [:cntrl:]:所有控制字符 [:graph:]:可打印并可看到的字符.空格是可打印的,但是不是…
首先注意:正则表达式与通配符是完全不同的概念.通配符(wildcard)代表的是 Bash 操作接口的一个功能,而正则表达式是一种字符串处理的表示方式,一定要区分开来. 正则表达式(Regular Expression)是通过一些特殊字符的排列,用以查找/替换/删除一行或多行文字字符串. 也即是说,正则表达式是用在字符串处理上的一项表达式,它不是一个工具程序,而是一个字符串处理的标准依据,如果我们想以正则表达式的方式处理字符串,就要使用支持正则表达式的工具程序,如 vim.sed.awk.gre…
grep grep全称:Globally search a Regular Expression and Print 全局搜索正则表达式 正规表达式本质上是一种"表示方法", 只要工具程序支持这种表示方法,那么该工具就可以使用正则表达式处理字符串. 例如 vi, grep, awk ,sed 等等工具,因为她们有支持正规表示法, 所以,这些工具就可以使用正规表示法的特殊字节来进行字串的处理.但例如 cp, ls 等命令并未支持正规表示法, 所以就只能使用 bash 自己本身的wildc…
在linux中 通配符是系统命令使用,一般用来匹配文件名或者什么的用在系统命令中. 通配符是系统级别的,通配符多用在文件名上,比如查找find,ls,cp,rm 正则表达式是操作字符串,以行尾单位来匹配字符串使用的. 正则表达式需要相关工具的支持 例如 : egrep, awk, vi, perl. 在文本过滤工具里,都是用正则表达式,比如像awk,sed等,是针对文件的内容的 还有一点需要注意的是:*在通配符和正则表达式中有其不一样的地方,在通配符中*可以匹配任意的0个或多个字符,而在正则表达…