Linux 正则表达式动态查找
匹配操作符
转义字符
. 匹配任意单个字符
[1249a],[^12],[a-k] 字符序列单字符占位
^ 行首
$ 行尾
<,>:<abc 单词首尾边界
| 连接操作符
(,) 选择操作符
n 反向引用
重复操作符:
? 匹配0到1次。
- 匹配0到多次。
,匹配1到多次。
{n} 匹配n次。
{n,} 匹配n到多次。
{n,m} 匹配n到m次。
与扩展正则表达式的区别:
grep basic ?, +, {, |, (, and )
匹配任意字符 .*
-E 不使用扩展表达式
重点在与明规则,明需求。
Linux文本分析
- cut:显示切割的行数据,并生成指定的列
- f:选择显示的列 分隔符分隔后定义列
- s:不显示没有分隔符的行
- d:自定义分隔符
- sort:排序文件的行(排序:字典序和数值序)
- n:按数值排序
- r:倒序
- t:自定义分隔符
- k:选择排序列
- u:合并相同行
- f:忽略大小写
wc :输出行数,单词数,字节数
参数: -c,显示字节数,-w,显示单词数 ,-l,显示行数
grep 查找
sed:行编辑器
- sed [options] 'AddressCommand' file ...基本语法
- -n: 静默模式,不再默认显示模式空间中的内容
- -i: 直接修改原文件
- -e SCRIPT -e SCRIPT:可以同时执行多个脚本
- -f /PATH/TO/SED_SCRIPT
- -r: 表示使用扩展正则表达式
sed:行编辑器Command d: 删除符合条件的行; sed "3d" xx.txt 删除第三行 p: 显示符合条件的行; a string: 在指定的行后面追加新行,内容为string n:可以用于换行 i string: 在指定的行前面添加新行,内容为string r FILE: 将指定的文件的内容添加至符合条件的行处 w FILE: 将地址指定的范围内的行另存至指定的文件中; s/pattern/string/修饰符: 查找并替换,默认只替换每行中第一次被模式匹配到的字符串 g: 行内全局替换 i: 忽略字符大小写 s///: s###, s@@@
(), 1, 2
sed:行编辑器Address 可以没有即全文 给定范围 查找指定行/str/
awk
把文件逐行读入,空格,制表符为默认
分隔符
-F 指定分隔符
![ac15819feaf43d3b70ba422f7437bc6f.png](https://i-blog.csdnimg.cn/blog_migrate/06e0dda785ba8f5049be558aecd9d691.jpeg)
![9c627c58fd2347383de39a2bcbd60275.png](https://i-blog.csdnimg.cn/blog_migrate/6b0d9a3af35d4745128f67473b564afd.jpeg)
参数与使用