发新话题
打印

Awk各部分详解-记录(4)

Awk各部分详解-记录(4)

前面介绍过awk处理数据是以数据行来进行处理的,一条数据行称为一条记录,以换行符结束。 3.1.1 记录
         记录分隔符

    默认情况下,输入和输出记录的分隔符(数据行分隔符)都是回车符(回车换行符 Enter),分别保存在awk的内置变量ORSRS中。
        变量$0
    Awk$0来保存整条记录(当每读入一条记录时,$0的值都会给新的记录替换,所以NF值,也就是字段的数目值也有可能会改变。)。换行符的值保存在awk的内置变量RS中,默认值为回车。

范例 3-1
[root@localhost script]# awk '{print $0}' passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
… … …
范例 3-2
[root@localhost script]# awk '{print}' passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
… … …
### 解析 ###
打印出awk内置变量$0的值,也就是把所有记录都显示出来。


    ●      变量NR
每条记录号都保存在awk内置变量NR中,每处理完一条记录,NR的值都会加1

范例 3-3
[root@localhost script]# awk '{print NR,$0}' 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
… … …
### 解析 ###
打印出awk内置变量NR$0的值,也就是把所有记录和记录号都显示出来。

TOP

发新话题
版块跳转 
Powered by Discuz! 6.1.0 © 2001-2007 Comsenz Inc.
---------------------------------------------------------------------------------------
本论坛所有文章为会员所发布,会员拥有该内容的所有权力及责任,转载时请注明出处!
站务管理员:我心飞翔 QQ:12012805(请直奔主题), E-mail:admin@gdin.net 其它非本人.
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触和有损学校声誉的言论!
粤ICP备06054096号 茂名市公安局网警支队备案: 4409813060501

Processed in 0.051352 second(s), 9 queries, Gzip enabled.