awk简单了解

awk作用:过滤、输出内容
$1 第一列, $2 第二列依次类推,NR行号,但$0表示一行,NF表示最后结尾一列
-F 指定分隔符。

例子:打印/etc/passwd文件的第一行(NR==1),$0 表示一行
[root@localhost ~]# awk 'NR==1 {print $0}' /etc/passwd
root:x:0:0:root:/root:/bin/bash

例子:打印/etc/passwd文件的第一行,第六列内容
[root@localhost ~]# awk -F ":" 'NR==1 {print $6 }' /etc/passwd
/root

例子:打印/etc/passwd文件的第一行,最后一列($NF)
[root@localhost ~]# awk -F ":" 'NR==1 {print $NF}' /etc/passwd
/bin/bash

例子:打印/etc/password文件的第一行,第六列和最后一列
[root@localhost ~]# awk -F ":" 'NR==1 {print $6,$NF}' /etc/passwd
/root /bin/bash

例子:打印文件的行号
[root@localhost kang]# awk '{print NR,$0}' /etc/passwd
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
4 adm:x:3:4:adm:/var/adm:/sbin/nologin
5 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
6 sync:x:5:0:sync:/sbin:/bin/sync
7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
8 halt:x:7:0:halt:/sbin:/sbin/halt
9 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
10 uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin