码迷,mamicode.com
首页 > 其他好文 > 详细

三剑客以外文本处理工具

时间:2020-02-12 18:09:11      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:ima   工作经验   lines   运维工程师   count   $2   技术   etc   img   

目录

张贺,多年互联网工作经验,担任过网络工程师、系统集成工程师、LINUX系统运维工程师,负责过大规模集群架构自动化运维管理工作,擅长Web集群架构与自动化运维,曾负责国内某电商运维工作。
笔者微信:zhanghe15069028807

文本处理最厉害的工具是文本处理”三剑客”(grep、sed、awk),一定要用的熟练,三剑客像是三本一流剑谱:太极剑法(变化多端,用意不用力)、辟邪剑法(唯快不破)、独孤九剑(破解天下一切武功)。

技术图片

三种剑法皆属于一流剑法,但是面对小喽啰的时候范不上用这种高深的武功,都无需拔剑,用一些江湖流传的螳螂拳、八卦掌、炮锤足矣!

wc

discription:word count

wc [option]… [file]…

? –l:lines

? -w:words

? -c:bytes

[root@N2 ~]# cat test.txt
abxy
cab
abc
hello ha
[root@N2 ~]# wc test.txt
 4  5 22 test.txt
 [root@N2 ~]# wc -l test.txt
4 test.txt
[root@N2 ~]# wc -w test.txt
5 test.txt
[root@N2 ~]# wc -c test.txt
22 test.txt

cut

-d:指定分隔符,只能指定一个,awk可以指定多个

-f:挑选字段

? #单个字段

? #-#:连续多个字段

? #,#:离散的多个字段

[root@N2 ~]# cut -d: -f1,3 /etc/passwd | head -3
root:0
bin:1
daemon:2

sort

sort [OPTION]... [FILE]...

? -n:基于数据大小而字符进行排序,默认是根据字符排序

? -t:指定分隔符

? -k #:指定用于比较的字段

? -r:逆序排序

? -f忽略字符大小写

? -u:重复的行只保留一份,重复行是指连续且相同

uniq

uniq:报告或移除重复的行

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

-u:仅显示未曾重复过的行

-d:仅显示重复过的行

[root@N2 ~]# cat test.txt
abxy
abxy
cab
abc
hello ha
//显示重复的次数
[root@N2 ~]# uniq -c test.txt
      2 abxy
      1 cab
      1 abc
      1 hello ha
//去除重复的行
[root@N2 ~]# uniq test.txt
abxy
cab
abc
hello ha
//显示不重复的行
[root@N2 ~]# uniq -u test.txt
cab
abc
hello ha
//仅显示重复过的行
[root@N2 ~]# uniq -d test.txt
abxy

//统计常用命令的top3,先把序号去掉,然后根据首字母排序,再显示次数,根据次数再排序,取出top3
history | awk '{print $2}' | sort | uniq -c | sort -nr | head -3

diff

[root@N2 ~]# cp /etc/fstab ./fstab.new
[root@N2 ~]# vim ./fstab.new
[root@N2 ~]# diff /etc/fstab ./fstab.new 
5a6   #在第五行下面add了一行,变成了第6行
> zhanghe

[root@N2 ~]# diff /etc/fstab ./fstab.new 
3c3   #第三行被change了
< # /etc/fstab  #旧文件第三行原本是这样的
---
> # /etc/fstabzhanghe #新文件变成了这样

三剑客以外文本处理工具

标签:ima   工作经验   lines   运维工程师   count   $2   技术   etc   img   

原文地址:https://www.cnblogs.com/yizhangheka/p/12299766.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!