Linux三剑客
一、grep
grep是一种强大的文本搜索工具,它能使用特定模式匹配搜索文本,并默认输出匹配行。用于查找文件里符合条件的字符串(信息筛选)grep学习
二、awk
awk是一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一。awk学习
awk的基本语法结构
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210506113114997.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3F5dF83MjI=,size_16,color_FFFFFF,t_70
last | grep -v "^$" | grep -v "wtmp" | head -3 | awk 'BEGIN {printf("%s\n","start")} {print}'
last
显示信息
grep -v "^$" | grep -v "wtmp"
把空行和不需要的内容筛掉
head -3
只取前三行
awk 'BEGIN {printf("%s\n","start")} {print}'
输出,且在最开始打印start字样
有头有尾:
只打印出时间:
打印出使用时长
三、sed
sed功能同awk类似,差别在于,sed简单,利用脚本来处理文本文件,对列处理的功能要差一些,awk的功能复杂,对列处理的功能比较强大。sed学习
cat a.log | sed 's/abc/123/g'
以上后面不加g也可sed 's/abc/456/' a.log
删除其中第一行和第二行sed '1,2d' a.log
删掉有added参数的一行:sed '/added/d' a.log
单行增加以及单行显示
将行首都转换成$符号
都删掉:
在vim中有同等功效的指令:g全局替换