【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)

目录

一、tr——转换、压缩、删除

1、tr -s “分隔符” (指定压缩连续的内容)

2、tr -d 想要删除的东西

​编辑 3、tr -t 内容1 内容2 将内容1全部转换为内容2(字符数需要一一对应)

二、cut——快速剪裁命令

三、uniq——去重

四、sort——排序

4.1单独的sort,仅按照首字符排序

4.2 sort的集合用法,cat passwd|sort -t ":" -k 4 -n

4.3sort的-o用法,将日志访问量前10的统计出来,并保存为name.txt

总结


一、tr——转换、压缩、删除

tr命令 含义 举例
-s 指定压缩连续的符号 tr -s “ ”
-d 指定删除所有的符号 tr -d %
-dc dc组合,指定删除的取反  
-t  内容1' ‘内容2’ 将文章内所有的内容1转换为内容2 tr -t 'a-z' 'A-Z'

1、tr -s “分隔符” (指定压缩连续的内容)

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第1张图片

2、tr -d 想要删除的东西

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第2张图片 3、tr -t 内容1 内容2 将内容1全部转换为内容2(字符数需要一一对应)

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第3张图片

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第4张图片【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第5张图片

4、tr -dc %

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第6张图片

 

生成一个5位数的随机密码
[root@localhost opt]#cat /dev/random |tr -dc [[:alnum:]]|head -c 5

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第7张图片

二、cut——快速剪裁命令

cut快速截取列
-d 指定分隔符(这里只能识别单个分隔符,常与tr -s命令结合)
-f # 指定提取的哪一列

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第8张图片

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第9张图片

三、uniq——去重

uniq去重统计
-c 连续去重统计
-u 没有连续重复的行显示出来(与下面互为补集)
-d 把连续重复2次以上的,显示出来,显示的时候只表示一行

uniq -c一般与sort命令结合使用,用于先排序集合所有相同的行,然后连续去重统计,再排序获取重复的次数

 【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第10张图片

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第11张图片

四、sort——排序

sort排序
-n 以数字的形式
-r 取反
-o<输出文件名> 指定另保存为文件,相当于重定向输入
-t 指定分隔符
-k# 指定按哪一列排序

4.1单独的sort,仅按照首字符排序

经验总结,不一定对,数字在前,相同字母,大写字母优先小写字母,忽略空格

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第12张图片

4.2 sort的集合用法,cat passwd|sort -t ":" -k 4 -n

【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第13张图片

4.3sort的-o用法,将日志访问量前10的统计出来,并保存为name.txt

 【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)_第14张图片

总结

命令名称 用法 选项集合
sort 排序 -t(指定分隔符),-k(指定列),-n(以数字大小排序),-r(排序取反),-o(输出文件)
uniq 去重,统计 -c(去重统计),-d(只显示连续重复两次以上的行),-u(只显示没有连续出现的行)
tr 压缩,转换,删除 -s(指定压缩内容),-d(指定删除内容)-dc(与-d取反,也可以理解为留下指定内容),-t(指定转换的内容)
cut 提取列 -d(指定分隔符),-f(指定提取的列)
需要理解记忆:cat 某日志 |tr -s " "|cut -d " " -f 3|sort|uniq|sort -nr|head

你可能感兴趣的:(linux,网络,运维)