AWK过滤命令的使用

awk '{}' 基本语法

三种方式调用awk,
1.命令行的方式:   awk [-F 分隔符号] 'comands' input file(s)     分隔符只能制定一个(不能同时制定2个或以上个分割标准)
其中 commands 是awk命令,【-f 域分隔符】是可选的。  input-file(s) 是待处理文件
在awk中,文件的每一行中,由与分隔符分开的每一项称为一个域,通常,在不指名-F域分隔符的情况下。默认的分隔符是空格。


例子:last -n 5         ##仅取出前五行


awk内置的环境变量
FILENAME :显示文件名   例子: awk -F ‘:’ `"filename:" FILENAME "\t" {print $1}` 1.txt
filename: 1.txt  第一个域
NR:显示行号
FR:显示域号


1.awk的常规用法
需要注意的是 $1表示第一个域,$0表示所有域
输出以空格为分隔符的第一个单词
akw命令的默认分隔符为空白符或者[tab]   (也就是我们常说的空格)
当然也可以不使用空格作为分隔符,-F ‘’ 可以在‘’内输入你需要使用的查询分隔符

2.输出前n行的数据
last -n 5 

3.awk的查询语句
awk -F ';' '/root/'  /etc/passwd
awk -F ';' '/root/ {print $1}'  /etc/passwod

4.awk函数的一些内置变量
例子 统计/etc/passwd:文件名 每行的行号  每行的列数  对应的完整行内容
awk -F ';' '{print "filename:" FILENAME  ",Linenumber:" NR ",colunms:" NF ",linecontent:" $0}'  /etc/passwd

猜你喜欢

转载自blog.csdn.net/sdb5858874/article/details/80485375
今日推荐