码迷,mamicode.com
首页 > 其他好文 > 详细

awk命令

时间:2016-06-15 11:04:43      阅读:200      评论:0      收藏:0      [点我收藏+]

标签: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命令

标签:awk命令

原文地址:http://coolcl.blog.51cto.com/4514424/1789358

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!