翼度科技»论坛 云主机 LINUX 查看内容

shell脚本文本处理工具

5

主题

5

帖子

15

积分

新手上路

Rank: 1

积分
15

声明:
以下内容为个人笔记,内容不完全正确,请谨慎参考。
文本处理工具

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
复杂:

简单:


来源:https://www.cnblogs.com/brxx/p/18152466
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具