shell编程之文本与日志过滤

时间:2023-03-09 15:53:25
shell编程之文本与日志过滤

1:grep命令:

grep -v  "char"  file_name 匹配不包括"char"的文本

grep -n -w "char" file_name 完整匹配某个字符

grep ^s $s  分别为匹配行首为s的 或者行末为s的文本。

2:tr 命令

tr set1  set2   替换集合set1 为set2

tr -s set1  压缩字符

tr -t  ":"     指定分隔符 默觉得空格

tr -d "set"   删除全部在set中出现的字符从文本

3:seq 命令用来生成序列

seq  1 10  生成1到10 的序列,以换行符号作为分隔符

seq   -s " " 1 +2 10  指定分隔符为空格,序列的增量为2

4:sort 命令用来排序 一般与uniq命令连用

ls /boot |  sort -n -k5    -n 表示以数字的大小排序,-k 5 表示以第5列为标准。

5:uniq 用来统计

uniq -c  统计同样行的个数

6:  cut   用来分割字符或者行数

cut -d " " -f 5   /etc/passwd   -d " " 指定分隔符为空格。并仅仅显示第5个区域。

ls /boot |  cut -c  5  截取第五个字符

cut -b  5  截取第五个字节。