AWK基础讲解及grep用法

一、AWK

如下图awk命令是一个比较完整的整个流程

-F :表示指定分隔符号相当于内置变量NS(分隔符号一般利用双引号或者单引号括起来)

BEGIN{}:表示一开始awk要处理内容(不是必要的)

END{}:表示awk最后要处理内容(不是必要的)

$2:表示取出第二列

最后是我们要处理的文本

补充:awk语句要写在 '' 单引号之内
不过一般情况下都是直接

-F' ' '{print $1}'
没有啥begin,end

再看一个示例:

花括号外面的表示条件,而这里的NR是内置变量,意思是行数,表示第几行。

取出数据以后如果有点乱可以加上  |column -t

例如:

ls -l | awk -F',' '{print $1,$5}' | column -t

内建变量

变量 描述
$n 当前记录的第n个字段,字段间由FS分隔
$0 完整的输入记录
ARGC 命令行参数的数目
ARGIND 命令行中当前文件的位置(从0开始算)
ARGV 包含命令行参数的数组
CONVFMT 数字转换格式(默认值为%.6g)ENVIRON环境变量关联数组
ERRNO 最后一个系统错误的描述
FIELDWIDTHS 字段宽度列表(用空格键分隔)
FILENAME 当前文件名
FNR 各文件分别计数的行号
FS 字段分隔符(默认是任何空格)
IGNORECASE 如果为真,则进行忽略大小写的匹配
NF 一条记录的字段的数目
NR 已经读出的记录数,就是行号,从1开始
OFMT 数字的输出格式(默认值是%.6g)
OFS 输出字段分隔符,默认值与输入字段分隔符一致。
ORS 输出记录分隔符(默认值是一个换行符)
RLENGTH 由match函数所匹配的字符串的长度
RS 记录分隔符(默认是一个换行符)
RSTART 由match函数所匹配的字符串的第一个位置
SUBSEP 数组下标分隔符(默认值是/034)

二、grep用法

1.过滤不想要的数据,过滤后的数据中不含有hithub或meng。

|grep -v "hithub\|meng"

 

posted @ 2022-04-10 16:12  hithub  阅读(164)  评论(0编辑  收藏  举报