tr命令
tr是把輸入的數(shù)據(jù)經(jīng)過tr的處理羞芍、轉(zhuǎn)譯之后將結(jié)果輸出;
tr [-cdst][--help][--version][第一字符集][第二字符集]
tr [OPTION]…SET1[SET2]
tr '[:lower:]' '[:upper:]' 替換大小寫
tr 'A-Z' 'a-z' 替換大小寫
-c, --complement:反選設(shè)定字符郊艘。也就是符合 SET1 的部份不做處理荷科,不符合的剩余部份才進行轉(zhuǎn)換
[root@localhost ~]# echo "hello worldls">b.txt
[root@localhost ~]# cat b.txt | tr -c l A #識別文檔中的l字母,把非l的字母轉(zhuǎn)換成A
AAllAAAAAlAlAA
-d, --delete:刪除指令字符
[root@localhost ~]# cat b.txt|tr -d ' ' #識別文檔中的空格纱注,把空格去除
helloworldls
-s, --squeeze-repeats:縮減連續(xù)重復(fù)的字符成指定的單個字符
[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 設(shè)定長度相等
[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 使用純數(shù)字排序默認升序 //就不按照ASCII數(shù)值啦,直接按照數(shù)字大小
-r 反向排序狞贱,數(shù)字降序 //可以配合n使用呀刻获,這樣就按照數(shù)字大小降序排序
-u 去重復(fù) //有重復(fù)的行就刪除
-kn1,n2: 由n1區(qū)間排序到n2區(qū)間,可以只寫kn1,即只對n1字段排序瞎嬉。
-o 把結(jié)果輸入到文檔中
wc命令
wc:統(tǒng)計指定文件中的字節(jié)數(shù)蝎毡、字數(shù)、行數(shù)佑颇,并將統(tǒng)計結(jié)果顯示輸出顶掉。
一般直接接文檔或者由前面的管道輸出。
-c 統(tǒng)計字節(jié)數(shù)挑胸。
-l 統(tǒng)計行數(shù)痒筒。
-m 統(tǒng)計字符數(shù)。這個標志不能與 -c 標志一起使用。
-w 統(tǒng)計字數(shù)簿透。一個字被定義為由空白移袍、跳格或換行字符分隔的字符串。
-L 打印最長行的長度老充。
-help 顯示幫助信息
--version 顯示版本信息
unqi命令
uniq命令可以去除排序過的文件中的重復(fù)行葡盗,因此uniq經(jīng)常和sort合用。也就是說啡浊,為了使uniq起作用觅够,所有的重復(fù)行必須是相鄰的。
[root@www ~]# uniq [-icu]
選項與參數(shù):
-i :忽略大小寫字符的不同巷嚣;
-c :進行計數(shù)
-u :只顯示唯一的行;即不重復(fù)的行
#uniq testfile //直接刪除未經(jīng)排序的文件喘先,將會發(fā)現(xiàn)沒有任何行被刪除
hello
world
friend
hello
world
hello
........................................
#cat words | sort |uniq
friend
hello
world
.............................
#sort testfile | uniq -c //排序之后刪除了重復(fù)行,同時在行首位置輸出該行重復(fù)的次數(shù)
1 friend
3 hello
2 world
cut命令
cut命令可以從一個文本文件或者文本流中提取文本列廷粒。
[root@www ~]# cut -d'分隔字符' -f fields <==用于有特定分隔字符
[root@www ~]# cut -c 字符區(qū)間 <==用于排列整齊的信息
選項與參數(shù):
-d :后面接分隔字符窘拯。與 -f 一起使用;
-f :依據(jù) -d 的分隔字符將一段信息分割成為數(shù)段坝茎,用 -f 取出第幾段的意思涤姊;
-c :以字符 (characters) 的單位取出固定字符區(qū)間;
: