1.grep过滤筛选命令:
grep = Globally search a Regular Expression and Print(处理过滤模式空间中的数据)
grep -E = egrep
grep格式:
grep 匹配条件 处理文件
grep root passwd #过滤root关键字
grep ^root passwd ##以root开头
grep root$ passwd ##以root结尾
grep -i root passwd ##后略大小写
grep -E "\<root" passwd ##root字符之前不能有字符
grep -E "root\>" passwd ##root字符之后不能有字符
grep -数字 ##显示过滤行以及上面几行和下面几行
grep -n ##显示匹配的行所在行号
grep -A ##显示过滤行以及下面几行
grep -B ##显示过滤行以及上面几行
grep -v ##反向过滤
grep字符数量匹配规则:
^westos ##以westos开头
westos$ ##以westos结尾
w....s ##w开头s结尾中间4个任意字符
.....s ##s结尾前面5个任意字符
* ##*前一个字符出现任意次
? ##0到1次
+ ##1次到任意次
{
n} ##n次
{
m,n} ##m到n次
{
0,n} ##0-n次
{
,n} ##0-n次
{
m,} ##最少m次
(lee){
2} ##lee字符串出现2次
(ad)* ## ad 出现任意次
注意:{ } 的作用对象为前一个字符,( ) 才能作用字符组:
2.sed 字符流编辑器:
2-1:e 表示 执行多个命令;-n 静默输出; p 显示;
e 表示执行多个命令:
2-2:d 删除 ;a 添加(在目标行之后);c 替换 ; w 写入 ;i 插入(在目标行之前);r 整合两个文件到一起 ;
删除 和 添加(在目标行数之后添加) :
替换 (整行替换) 和 写入 (生成新文件):
插入(在目标行数之前插入) ,整合文件(需要两个文件)
2-3:sed 的字符替换;-i 将处理结果保存到文件中;N 提前加载模式空间中处理的行:
注意:sed 命令的所有操作都需要加入 -i 参数后才能保存到文件中:
3.awk 文本处理工具(报表生成器)
在awk 命令的条件中如 : /sbin/ 表示过滤筛选关键字:
注:awk 命令中 BEGIN { } 和 EDN { } 可以没有,但 { } 必须有:
BEGIN 表示在命令开始之前,END 表示在命令结束时:
课后练习: