gtxyzz

cut、sort、uniq、wc、tee、split、tr命令详解

gtxyzz web技术 1970-01-01 923浏览 0

cut

cut命令用来切割文本。
d选项指定切割的字符。
f选项指定切割后返回的部分
下面这个例子表示使用‘:’切割/etc/passwd,返回第一段:

[root@localhost tmp]# cat /etc/passwd|cut -d : -f 1
root
bin
daemon
...

sort

单用就是按ascii码排序。

sort /tmp/passwdbak
>
[
234
234a
adm:x:3:4:adm:/var/adm:/sbin/nologin
bin:x:1:1:bin:/bin:/sbin/nologin
chrony:x:995:991::/var/lib/chrony:/sbin/nologin

默认特殊字符最前面,紧跟数字,最后是字母开头的行。
-n :按数字,字母都当做0

[root@localhost tmp]# sort -n !$
sort -n /tmp/passwdbak
>
[
adm:x:3:4:adm:/var/adm:/sbin/nologin
bin:x:1:1:bin:/bin:/sbin/nologin
chrony:x:995:991::/var/lib/chrony:/sbin/
rww:x:1000:1000::/home/rww:/bin/bash
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
234
234a

上例中,我们看到,使用-n选项后,特殊字符开头的行出现在最上头,字母开头的行按照ascii码顺序排列,数字出现在最后。
-r 反序

chrony:x:995:991::/var/lib/chrony:/sbin/nologin
bin:x:1:1:bin:/bin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
234a
234
[
>

这个结果和sort的结果刚好相反。

wc

统计命令。
wc -l统计行数
wc -m 统计字数
wc -w :统计次数
wc -m显示的字数通常和我们看到的不一样,是因为它把隐藏的字符也算进去了:

[root@localhost tmp]# wc -m abc
4 abc
[root@localhost tmp]# cat -A abc
1$
2$

cat -A可以查看隐藏的字符。

uniq

去重,要先sort再uniq,否则只能去重挨着的行。
-c选项:统计相同行出现次数

Sort 2.txt|uniq -c

-c 显示行数

tee

将标准输出重定向到文件,并且输出到控制台。
-a选项:追加

sort 2.txt|tee a.txt

tr

tr命令从标准输入读取数据,进行替换或者删除。

替换
例1.转换字符

echo 38sb|tr 3 s 
s8sb

例2.转换大小写

echo 38sb|tr [a-z] [A-Z ] 
38SB

split

b:按大小,不写单位就是按字节
例子:按10k来分。

															
发表评论