今天看到这样一句话特喜欢:“我最后的祝福是要给那么些人--他们知道我不完美却还爱着我。”真爱一个人,就应该能接受他/她的不完美。哈哈,书归正传!
一、awk
awk是linux中一个强大的文本分析工具,把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行分析处理。
1、基本用法
awk [选项参数] ‘pattern1{action1} pattern2{action2}...’ filename
pattern:表示AWK在数据中查找的内容,就是匹配模式
action:在找到匹配内容时所执行的一系列命令
2、选项参数说明
选项参数 | 选项参数 |
-F | 指定输入文件折分隔符 |
-v | 赋值一个用户定义变量 |
3、案例实操
a、数据准备
将passwd文件复制一份到家目录下
b、搜索passwd文件以root关键字开头的所有行,并输出该行的第7列。
c、搜索passwd文件以root关键字开头的所有行,并输出该行的第1列和第7列,中间以“,”号分割。
d、将passwd文件中的用户id增加数值1并输出。
4、awk的内置变量
变量 | 说明 |
FILENAME | 文件名 |
NR | 已读的记录数 |
NF | 浏览记录的域的个数(切割后,列的个数) |
5、案例实操
a、统计passwd文件名,每行的行号,每行的列数
b、切割IP
c、查询一个文件中的空行
二、sort
sort命令在Linux里非常有用,它将文件进行排序,并将排序结果标准输出。
1、基本语法
sort (选项)(参数)
选项 | 说明 |
-n | 依照数值的大小排序 |
-r | 以相反的顺序来排序 |
-t | 设置排序时所用的分隔字符 |
-k | 指定需要排序的列 |
参数:指定待排序的文件列表
2、案例实操
a、数据准备
b、按照“:”分割后的第三列倒序排序。