1、文本逆序显示tac

  1. [root@CentOS-8 ~]# cat test.txt
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. [root@CentOS-8 ~]# tac test.txt
  8. 5
  9. 4
  10. 3
  11. 2
  12. 1

2、文本倒序显示

  1. [root@CentOS-8 ~]# cat test.txt
  2. 1 2 3 4 5
  3. [root@CentOS-8 ~]# rev test.txt
  4. 5 4 3 2 1

3、cut按照列显示指定列

# 以:分隔显示文件的第一行和第三行
[root@CentOS-8 ~]# cut -d: -f 1,3 /etc/passwd
root:0
bin:1
[root@CentOS-8 ~]# cut -d: -f 1,3-4 /etc/passwd
root:0:0
bin:1:1

4、sort排序

# 以:为分隔,对文件第三列进行排序
# 默认以字符排序,-n选项为指定以数字排序,-r为倒序
[root@CentOS-8 ~]# sort -nt: -k3 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin

# 目录下按照文件大小排序
[root@CentOS-8 ~]# ls -laS |tr -s ' ' |sort -nt' ' -k5
total 48
-rw-r--r--. 1 root root 10 May 6 14:24 test.txt
-rw-r--r--. 1 root root 18 May 11 2019 .bash_logout
drwxrwsrwx. 2 root test01 20 May 6 13:10 test
-rw-------. 1 root root 28 May 5 22:50 .lesshst

5、uniq合并重复行

# uniq合并相邻重复行
# -c显示重复次数
[root@CentOS-8 ~]# uniq -c test.txt
      1 123
      1 asd
      2 123
      1 4dc
      2 aaa
      1 3112
      1 sasd
      1 asdas
      3 890
# 排序后在去重
[root@CentOS-8 ~]# cat test.txt |sort -n |uniq -c
      2 aaa
      1 asd
      1 asdas
      1 sasd
      1 4dc
      3 123
      3 890
      1 3112

3、文本处理三剑客grep、sed、awk