文本三剑客之awk

shell : /bin/bash

正则表达式:匹配文章中的字符

通配符    :匹配的是文件名   {?  任意单个字符}

元字符:不表示本来的含义,在正则表达式中有特殊含义的字符

正则表达式 : (易写难读)      元字符的使用

正则表达式

  1. 代表字符

.  代表单个任意字符

[ ] 单个字符 [a b c] 显示 a或b或c

文本三剑客之awk_第1张图片

  1. 表示次数

* 零次或无数次   代表前面的字符出现

.* 代表任意字符  (不包括0次)

/? 代表 0 或1次,可有可无的

/+ 代表 1次 到正无穷次

\{3\}  代表前面字符出现三次  \{n\}

文本三剑客之awk_第2张图片

  1. 位置锚定 

^ 开头  

$ 结尾

\b 字符串的开头\<

\b 字符串的结尾\>

4、分组或其他

分组( ) 使用括号将需要组合的字符 括起来

提取ens33 IP地址

文本三剑客之awk_第3张图片

grep

awk  文本处理工具  (取列)默认以空格 为分隔符

加载一行 处理一行

awk 选项  ‘表达式(处理动作)’

-F 指定分隔符

-v 指定变量

表达式(program):awk的语言的表达式

1 不写 没有

处理动作 就是所谓的打印出来

print 打印

printf 打印

awk 内置变量

$0 全文

$1 第一列

$2 第二列

$n  第n列

awk ‘{print   $1}’  awk 内置变量 和 shell环境中的变量可能会有冲突  ‘’的作用是不识别变量

BEGIN END 主要用于调整格式

NF 显示字段个数 

倒数第一列 $NF

倒数第二列 $(NF-1)

文本三剑客之awk_第4张图片

NR显示行号    

行号的作用是

文本三剑客之awk_第5张图片

文本三剑客之awk_第6张图片

打印偶数行

awk 建立数组

遍历数组

文本三剑客之awk_第7张图片

文本三剑客之awk_第8张图片

文本三剑客之awk_第9张图片

vim  文本处理工具  需要打开一个文件的所有内容(内存不足 打不开超级大的文件) 把整个文件加载到内存处理,如果内存不足,如法打开处理文件

文本三剑客之awk_第10张图片

你可能感兴趣的:(运维)