一、cat

①car -A 可以查看特殊字符

cat -b 加行号   相当于nl

-E:显示行结束符$

-A:显示所有控制符

-n:对显示出的每一行进行编号

-b:非空行编号

-s:压缩连续的空行成一行ff

②tac 将文本文件反向显示

③rev 将字符串反向显示

二、分页显示内容 

more

less

三、 显示文本前或者文本后内容

head   默认显示文件前10行

head -number 显示前多少行

-c # 指定获取前#字节

-n # 指定获取前#行

-# 同上

tail  默认显示文件后10行

-c # 指定获取后#字节

-n # 指定获取后#行

-# 同上

-f 跟踪显示文件fd新追加的内容,常用日志监控,相当于 --follow=descriptor,当文件删除再新建同名

文件,将无法继续跟踪文件

-F 跟踪文件名,相当于--follow=name --retry,当文件删除再新建同名文件,将可以继续跟踪文件

tailf 类似 tail –f,当文件不增长时并不访问文件 

 

三、按列抽取文本cut

-d DELIMITER: 指明分隔符,默认tab

-f FILEDS:

#: 第#个字段,例如:3

#,#[,#]:离散的多个字段,例如:1,3,6

#-#:连续的多个字段, 例如:1-6

混合使用:1-3,7

-c 按字符切割

--output-delimiter=STRING指定输出分隔符

 

四、合并多个文件paste

-d 分隔符:指定分隔符,默认用TAB

-s : 所有行合成一行显示

 

五、分析文本的工具

①wc  文本计数工具

[root@centos-7-wyj shiyan]#wc pass 
  82(行)  137 (单词) 1870 (字节数) pass

常用选项

-l 只计数行数

-w 只计数单词总数

-c 只计数字节总数

-m 只计数字符总数

-L 显示文件中最长行的长度

② 文本排序sort

 

常用选项

-r执行反方向(由上至下)整理

-R随机排序

-n执行按数字大小整理

-f选项忽略(fold)字符串中的字符大小写

-u选项(独特,unique),合并重复项,即去重

-t c选项使用c做为字段界定符

-k #选项按照使用c字符分隔的 # 列来整理能够使用多次

 

例子:

[root@centos-7-wyj shiyan]#df |tr -s ' ' |cut -d' ' -f5 |sort -nr 
100%
18%
5%
3%
1%
1%
1%
Use%
0%
0%
0%
0%

③去重

uniq命令从输入中删除前后相接的重复的行

-c: 显示每行重复出现的次数

-d: 仅显示重复过的行

-u: 仅显示不曾重复的行

范例: 查看访问日志

[root@centos8 data]#cut -d" " -f1 access_log |sort |uniq -c|sort -nr |head -3

  4870 172.20.116.228

  3429 172.20.116.208

  2834 172.20.0.222

范例:查看并发链接远程最多的主机IP

[root@centos8 ~]#ss -nt|tail -n+2 |tr -s ' ' : |cut -d: -f6|sort|uniq -c|sort -

nr |head -n2

    7 10.0.0.1

    2 10.0.0.7

④比较两个文件的不同diff

⑤比较两个二进制文件的不同cmp