Regular Expression 正则表达式 是处理字符串的方法,以行为单位进行字符串的处理操作,通过一些特殊付好的辅助可以轻易的完成查找删除操作。 语系的问题 LANG=C语系,不同语系的语法规则不一样,需要特别注意。
不管中括号中有几个字符都只代表了一个字符
grep -n '[^g]oo' regular_express#[^g]反向选择 不想要g开头的出现 #一定要记得制表符是在中括号里面 grep -n '^[a-z]oo' regular_express#可用^[]来反向选择也可以使用如下代码
grep -n '[^[:lower:]] regular_express#相当于递归即就是[^a-z]sed也是管道命令
sed [-nefr] [n1,n2 function] [文本文件] -n #安静模式 在一般语法中会全部输出到屏幕上 但安静模式下只有被处理 #的那一行才会输出 nl regular_express |sed '2,5d'#删除2-5行 并把删除后的文件打印在屏幕上 function a#新增 a后可以接字符 并插入到下一行 sed '2a drink tea' regular_express#这行字插入到第三行 sed '2a drink tea\ drink bear'#多行插入的方法 c#替换 c后接字符替换n1 n2中间的行 d#删除 i#插入 i后接字符 插入到上一行 p#打印 将某个选择的参数打印出来 s#替换awk的后续操作都是以单引号括住的,需要用print打印时,非变量部分需要用双引号括住。(print默认输出完换行,printf为输出后不换行)
awk '条件类型1{操作1} 条件类型2{操作2} ...' filename取出后五条登录信息,用管道传输给awk,在屏幕上打印第一个变量和第三个变量,中间以一个tab间隔。
NF #每一行拥有的字段总数 NR #目前awk所处理的是第几行数据 FS #目前的分隔字符