tr命令、uniq命令、sort命令 、wc命令

tr命令

tr是把输入的数据经过tr的处理、转译之后将结果输出;
tr [-cdst][--help][--version][第一字符集][第二字符集]
tr [OPTION]…SET1[SET2]
tr '[:lower:]' '[:upper:]' 替换大小写
tr 'A-Z' 'a-z' 替换大小写

-c, --complement:反选设定字符。也就是符合 SET1 的部份不做处理,不符合的剩余部份才进行转换

[root@localhost ~]# echo "hello worldls">b.txt
[root@localhost ~]# cat b.txt | tr -c l A   #识别文档中的l字母,把非l的字母转换成A
AAllAAAAAlAlAA

-d, --delete:删除指令字符

[root@localhost ~]# cat b.txt|tr -d ' '     #识别文档中的空格,把空格去除
helloworldls

-s, --squeeze-repeats:缩减连续重复的字符成指定的单个字符

[root@localhost ~]# cat b.txt
hello worlds
hello worlds
[root@localhost ~]# cat b.txt |tr -s l
helo worlds
helo worlds
[root@localhost ~]#  cat b.txt |tr -s s
hello worlds
hello worlds
****只能作用于单个字符

-t, --truncate-set1:削减 SET1 指定范围,使之与 SET2 设定长度相等

[root@localhost ~]#  cat b.txt |tr -t  worlds hello
helle hellos
helle hellos
[root@localhost ~]#  cat b.txt |tr -t  worlds he
helle herlds
helle herlds
[root@localhost ~]#  cat b.txt |tr -t  worlds hellollollo
helle hellol
helle hellol

--help:显示程序用法信息
--version:显示程序本身的版本信息

sort

sort是排列每行的顺序
默认按照ASCII值来进行排列
sort [-t 分隔符] [-kn1,n2] [-nru]
-t 分隔符:作用与cut的-的一个意思

[root@localhost ~]# cat /etc/passwd |sort -t: -k3    #以:为分割符按照第3列来排序

-n 使用纯数字排序默认升序 //就不按照ASCII数值啦,直接按照数字大小
-r 反向排序,数字降序 //可以配合n使用呀,这样就按照数字大小降序排序
-u 去重复 //有重复的行就删除
-kn1,n2: 由n1区间排序到n2区间,可以只写kn1,即只对n1字段排序。
-o 把结果输入到文档中

wc命令

wc:统计指定文件中的字节数、字数、行数,并将统计结果显示输出。
一般直接接文档或者由前面的管道输出。
-c 统计字节数。
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
-L 打印最长行的长度。
-help 显示帮助信息
--version 显示版本信息

unqi命令

uniq命令可以去除排序过的文件中的重复行,因此uniq经常和sort合用。也就是说,为了使uniq起作用,所有的重复行必须是相邻的。
[root@www ~]# uniq [-icu]
选项与参数:
-i :忽略大小写字符的不同;
-c :进行计数
-u :只显示唯一的行;即不重复的行

#uniq testfile     //直接删除未经排序的文件,将会发现没有任何行被删除
hello
world
friend
hello
world
hello
........................................
#cat words | sort |uniq
friend
hello
world
.............................
#sort testfile | uniq -c    //排序之后删除了重复行,同时在行首位置输出该行重复的次数
1 friend
3 hello
2 world

cut命令

cut命令可以从一个文本文件或者文本流中提取文本列。
[root@www ~]# cut -d'分隔字符' -f fields <==用于有特定分隔字符
[root@www ~]# cut -c 字符区间 <==用于排列整齐的信息
选项与参数:
-d :后面接分隔字符。与 -f 一起使用;
-f :依据 -d 的分隔字符将一段信息分割成为数段,用 -f 取出第几段的意思;
-c :以字符 (characters) 的单位取出固定字符区间;

你可能感兴趣的:(tr命令、uniq命令、sort命令 、wc命令)