声明:
以下内容为个人笔记,内容不完全正确,请谨慎参考。
文本处理工具
cut:
cut 工作是“剪”,具体来说就是在文件中负责剪切数据。cut 命令从文件的每个行剪切字节、字符和字段输出。
1、基本语法:
cut [选项参数] filename
说明:默认分隔符是副表符
2、选项参数说明
选项参数:1)-f 2)-d 3)-c
功能:1)列号,提取第几列 2)分隔符,按照指定分隔符分割列,默认是制表符"\t" 3)按照字符进行切割,后加n表示取第几列 比例 -c 1
3、案例:
获取系统中PATH变量,第2个":"开始后的所有路径
切割ifconfig后打印IP地址
以ens33IP地址为例:
所有网卡IP切割如下:
awk:
一个强大的文本分析工具,把文件逐行的读入,以空格默认为分隔符将每行切片,切开的部分再进行
分析处理。
1)基本语法:
awk [选项参数] '/pattern1/{action}' '/pattern2/{action}'......... filename
pattern 表示awk在数据查找中地内容,就是匹配模式
action 在找到匹配内容时所执行的一系列命令。
2)选项参数说明
-F 指定输入文件分隔符
-V 赋值一个用户定义变量
3)案例:
以root开头的所有行,输出第7列
以root开头的所有行,输出第1列和第7列
只显示/etc/passwd第一行和第七列,以逗号分割,具在所有行前面添加列名"user,shell"在最后一行添加"end of file"。
4)awk内置变量
FILENAME: 文件名
NR: 已读的记录数(行号)
NF: 浏览记录域的个数(切割后列的个数)
5)案例实操
1、统计passwd文件名,行号,列数
非管道操作:
2、查寻ifconfig 命令输出结果的空行所在的行号
复杂:
简单:
拓展:切割输出IP
复杂:
简单: