大家好,我是怪兽。
作为一名合格的程序员,在实际开发中,我们常常需要在服务器终端执行一些运维操作,而在服务器上没有图形界面,所以处理文本文件显得尤为麻烦。但Linux的强大终端命令提供了比图形界面更强大的功能,今天怪兽将教你快速掌握Linux中的文本处理三剑客——grep、awk、sed。
Linux文本处理三剑客包括grep、awk、sed,它们以正则表达式作为基础。标准和扩展正则表达式在Linux系统中得到支持。首先,我们来明确一下这三剑客的特点及应用场景。
grep命令家族包括grep、egrep、fgrep三个子命令,适用于不同场景。
我们以新建的testGrep文件为例,内容如下:
执行以上命令结果如下:
sed命令是Stream Editor的缩写,在处理行内容时功能强大,通过脚本来处理文本文件或标准输入。
使用sed命令的语法如下,我们通过新建的sedtest.txt文本文件为例:
1. 参数介绍
2. 动作介绍
awk命令由发明该工具的三位作者姓名首字母组成,用于格式化输出,三位作者分别是:
常用参数如下,我们以新建的log.txt文本文件为例:
awk的三位创建者已将其定义为“样式扫描和处理语言”,详细学习可参考:awk.readthedocs.io/en/l...
接下来通过编写awk脚本来统计学生成绩数据,新建student.txt文本文件,内容如下:
编写script.txt脚本如下:
执行命令并得到执行结果。
通过脚本修改统计计算之前的匹配条件,只统计ss同学的成绩。
总结如下:
这就是Linux文本处理三剑客grep、awk、sed的使用方法和技巧,希望对你有所帮助!