7月24日上课 文本处理工具

1、cat命令

[root@centos6 app]#cat -E f1  ---显示行尾结束符
sscc334$
centos6.m111agedu.com   $
$
abdvv          $
dwrgc$
$
$
[root@centos6 app]#cat -A f1 ---显示所有控制符
sscc334$
centos6.m111agedu.com   $
$
abdvv          $
dwrgc$
$
$
[root@centos6 app]#cat -n f1   ---显示行号
     1  sscc334
     2  centos6.m111agedu.com   
     3  
     4  abdvv          
     5  dwrgc
     6  
     7  
[root@centos6 app]#cat -s f1  ---压缩连续的空行成一行
sscc334
centos6.m111agedu.com   

abdvv          
dwrgc

2、tac命令

[root@centos6 app]#cat /etc/issue
CentOS release 6.9 (Final)
Kernel \r on an \m
\l
\n
\t
[root@centos6 app]#tac /etc/issue
\t
\n
\l
Kernel \r on an \m
CentOS release 6.9 (Final)

3、rev命令

[root@centos6 app]#echo abcde |rev
edcba

4、head和tail

显示文本前或后行内容
head
head [OPTION]... [FILE]...
-c #: 指定获取前#字节
-n #: 指定获取前#行
-#:指定行数
tail
tail [OPTION]... [FILE]...
-c #: 指定获取后#字节
-n #: 指定获取后#行
-#:
-f: 跟踪显示文件新追加的内容,常用日志监控

[root@centos6 app]#ifconfig eth2 |head -2|tail -1
          inet addr:192.168.25.142  Bcast:192.168.25.255  Mask:255.255.255.0

5、cut命令

cut [OPTION]... [FILE]...
-d DELIMITER: 指明分隔符,默认tab
-f FILEDS: 1-3,7
-c按字符切割
--output-delimiter=STRING指定输出分隔符

[root@centos6 app]#df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2       50264772 4649640  43055132  10% /
tmpfs             502056      80    501976   1% /dev/shm
/dev/sda3       40185208   49048  38088160   1% /app
/dev/sda1         991512   34904    905408   4% /boot
/dev/sr0         3878870 3878870         0 100% /media/CentOS_6.9_Final
[root@centos6 app]#df |tr -s " "|cut -d " " -f5
Use%
10%
1%
1%
4%
100%

6、paste命令

paste 合并两个文件同行号的列到一行
paste [OPTION]... [FILE]...
-d 分隔符:指定分隔符,默认用TAB
-s : 所有行合成一行显示

[root@centos6 app]#cat f1
aa  ee  ff  gg
bb      hh      ii      kk
cc  ll  mm  nn
[root@centos6 app]#cat f2
AA  CC  DD
BB  EE  FF
GG  KK  JJ
[root@centos6 app]#paste f1 f2
aa  ee  ff  gg  AA  CC  DD
bb      hh      ii      kk  BB  EE  FF
cc  ll  mm  nn  GG  KK  JJ
[root@centos6 app]#cat f1 f2
aa  ee  ff  gg
bb      hh      ii      kk
cc  ll  mm  nn
AA  CC  DD
BB  EE  FF
GG  KK  JJ
[root@centos6 app]#paste -s f1 f2
aa  ee  ff  gg  bb      hh      ii      kk  cc  ll  mm  nn
AA  CC  DD  BB  EE  FF  GG  KK  JJ

7、wc命令

-l来只计数行数
-w来只计数单词总数
-c来只计数字节总数
-m来只计数字符总数

[root@centos6 app]#cat /etc/passwd |wc -l
44

8、sort 命令

-r执行反方向(由上至下)整理
-n执行按数字大小整理
-f选项忽略(fold)字符串中的字符大小写
-u选项(独特,unique)删除输出中的重复行
-t c选项使用c做为字段界定符
-k X选项按照使用c字符分隔的X列来整理能够使用多次
sort -t: -k3,5 -nr /etc/passwd ---表示这个文件中的第三列和第五列反方向排序

[root@centos6 app]#cat f1
aa
b
b
d
d
cc
cc
ff
ff
[root@centos6 app]#sort -u f1
aa
b
cc
d
ff

9、uniq命令

从输入中删除前后相接的重复的行
uniq[OPTION]... [FILE]...
-c: 显示每行重复出现的次数
-d: 仅显示重复过的行
-u: 仅显示不曾重复的行
连续且完全相同方为重复

你可能感兴趣的:(7月24日上课 文本处理工具)