awk 学习

在awk中,print和print $0的作用完全一样。
awk '{print $0}' bill 
4429300,0,8613902700001,8613902700002,8613800288500,2004/06/26 10:31:33,2004/06/26 10:31:33,0,0,0,4,6,1,0,0,0,,0,2004/06/26 10:31:32,NULL,1,0,0,nihao@,4429300,0,8613902700001,8613902700003,8613800288500,2004/06/26 10:31:33,2004/06/26 10:31:33,0,0,0,4,6,1,0,0,0,,0,2004/06/26 10:31:32,NULL,1,0,0,nihao@,

在调用awk时,使用-F选项来指定","作为字段分隔符。
awk -F "," '{print $3, $4}' bill 
8613902700001 8613902700002

可以在字段中插入字符,比如:
awk -F "," '{print "OrgAddr:" $3, "\tDestAddr:" $4}' bill 
OrgAddr:8613902700001     DestAddr:8613902700002

bill.awk

BEGIN {
  FS=","
}
{print "OrgAddr:" $3, "\tDestAddr:" $4}

awk -f bill.awk bill 
OrgAddr: 8613902700001     DestAddr: 8613902700002

awk 'BEGIN{i=0} {i++} END{print i}' hello.txt 
1

awk 'BEGIN{print "start "} {print $0} END{print "end"}' hello.txt 
start 
hello!
end

awk -F: '{print "行号[" NR "]\t列数:" NF "\t行内容:"$0}' password 
行号[1]    列数:7    行内容:root:x:0:0:root:/root:/bin/bash
行号[2]    列数:7    行内容:bin:x:1:1:bin:/bin:/sbin/nologin
行号[3]    列数:7    行内容:daemon:x:2:2:daemon:/sbin:/sbin/nologin
行号[4]    列数:7    行内容:adm:x:3:4:adm:/var/adm:/sbin/nologin
行号[5]    列数:7    行内容:lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
行号[6]    列数:7    行内容:sync:x:5:0:sync:/sbin:/bin/sync
行号[7]    列数:7    行内容:shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
行号[8]    列数:7    行内容:halt:x:7:0:halt:/sbin:/sbin/halt

猜你喜欢

转载自blog.csdn.net/InJavaWeTrust/article/details/109637631