标签:awk命令
awk ‘PATTERN{ACTION}’file
不写PATTRRN条件,默认处理所有行,print $2 表示第二列
[root@localhost ~]#df -Ph |awk ‘{print $2}‘
Size
18G
503M
969M
190M
[root@localhost ~]#df -Ph |awk ‘{print $2$3}‘
SizeUsed
18G3.5G
503M0
969M25M
190M1.8M
显示多列用,隔开。默认分隔符为原本的分隔符
[root@localhost ~]#df -Ph |awk ‘{print $2,$3}‘
Size Used
18G 3.5G
503M 0
969M 25M
190M 1.8M
$0表示一整行中的所有字段
[root@localhost ~]#df -Ph |awk ‘{print $0}‘
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 18G 3.5G 14G 21% /
tmpfs 503M 0 503M 0% /dev/shm
/dev/sda1 969M 25M 894M 3% /boot
/dev/sda3 190M 1.8M 178M 1% /home
NF表示字段个数
[root@localhost ~]#df -Ph |awk ‘{print NF}‘
7
6
6
6
6
$NF最后一个字段
[root@localhost ~]#df -Ph |awk ‘{print $NF}‘
on
/
/dev/shm
/boot
/home
显示passwd的第一行,第一个字段
awk ‘passwd {print$1}’
-F指定分隔符
[root@localhost ~]#awk -F : ‘{print $1,$3}‘ /etc/passwd
root 0
bin 1
daemon 2
adm 3
lp 4
sync 5
shutdown 6
halt 7
mail 8
…
练习:找出fdisk –l 里包含了sd或者hd开头的磁盘信息行,不包含分区信息。
[root@localhost ~]#fdisk -l 2>/dev/null |grep "^Disk /dev/[sh]d[a-z]" |awk -F:‘{print $1}‘
Disk /dev/sda
Disk /dev/sdb
本文出自 “linux运维” 博客,谢绝转载!
标签:awk命令
原文地址:http://coolcl.blog.51cto.com/4514424/1789358