Linux学习——文本处理grep命令
-
grep 命令
- 根据用户指定的模式 pattern 对目标文本进行过滤,显示被模式匹配到的行;
grep [options] pattern [file]
- 常用参数:
- -v 显示不被pattern匹配到的行
- -i 忽略字符的大小写
- -n 显示匹配的行号
- -c 统计匹配的行数
- -o 仅显示匹配到的字符串
- -E 使用ERE,相当于egrep(可以识别更多的正则表达式规则)
-
sed 命令
- 流编辑器,用来处理一行数据。将一行数据存储在模式空间中->用sed命令处理->送入屏幕->清空空间。
- 常用参数:
- -h 显示帮助
- -n 仅显示script处理后的结果
- -e 指定的脚本来处理输入的文本文件
- -f 以指定的脚本文件来处理
- 常用动作:
- a: 新增 sed -e ‘4 a newline’
- c: 取代 sed -e ‘2,5c No 2-5 number’
- d: 删除 sed -e ‘2,5d’
- i: 插入 sed -ed ‘2i newline’
- p: 打印 sed -n ‘/root/p’
- s: 取代 sed -e ‘s/old/new/g’
- g: 代表全局
-
awk 命令
- 把文件逐行的读入,以空格为默认分隔符将每行切片。把行作为输入,并赋值给
$0
->将行切段,从$1
开始->对行匹配正则/执行动作->打印内容; awk 'pattern + action' [filenames]
- 常用语法:
- filename awk 浏览的文件名
- begin 处理文本前要执行的操作
- end 处理文本之后要执行的操作
- fs 设置输入域分隔符,等价于命令行-F选项
- nf 浏览记录的域的个数(列数)
- nr 已读的记录数(行数)
- 常用参数:
- ofs 输出域分隔符
- ors 输出记录分隔符
- rs 控制记录分隔符,换行标志
$0
整条记录$1
第一条分隔后的记录
- 把文件逐行的读入,以空格为默认分隔符将每行切片。把行作为输入,并赋值给