7-1 常见文本处理工具

文本内容:cat,more,less
文本截取:head,tail
按列抽取:cut
排序和统计:sort,wc
按关键字抽取:grep

cat

cat [OPTION]...[FILE]...
-E: 显示行结束符$
-n:对显示出的每一行进行编号
-A:显示所有控制符
-b:非空行编号
-s:压缩连续的空行成一行
tac与cat相同 行倒叙

more与less 分页显示

显示文本前或后行内容

head [OPTION]...[FILE]...

-c,--bytes=[-]K 显示文件前K字节。如果K前有-,则表示显示除最后K字节外的所有内容
-n,--lines=[-]K 显示前K行。如果K前有-,则表示显示除最后K行外的所有行

tail [OPTION]...[FILE]...

-c  # 指定获取后#字节
-n #  指定获取后#行
-# 同上
-f 跟踪显示文件fd新追加的内容,常用日志监控
   相当于--follow=descriptor
-F 跟踪文件名,相当于--follow=name--retry

cut命令 抽取

-b:以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了-n标志;
-c:以字符为单位进行分割;
-d:自定义分割符,默认为制表符;
-f: 与-d一起使用,指定显示哪个区域。
-n :取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的
范围之内,该字符将被写出;否则,该字符将被排除
范例:
[root@centos7 ~]# cut -d: -f1,3 /etc/passwd   #以冒号:为分割符,对/etc/passwd进行分割,取1,3字段

练习:
如何获取系统IP?

ifconfig eth0 | head -n 2 | tail -n 1 | tr -s " " | cut -d" " -f3

paste命令

命令用于合并文件的列 (横向合并)
-d<间隔字符>或--delimiters=<间隔字符>  用指定的间隔字符取代跳格字符。
-s或--serial  串列进行而非平行处理。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容