当前位置: > shell编程 >

awk处理文本字段(添加域)

时间:2014-09-15 02:25来源:linux.it.net.cn 作者:it
awk处理文本字段(添加域)

有这样的一段文本:
database1|error|security|summary
database1|info|vio|summary
database1|error|deep|summary

想要用awk处理成下面这样:
SECURITY|database1|error|security|summary
VIO|database1|info|vio|summary
AIX_DEEP|database1|error|deep|summary

添加的第一个字段虽然和第三个字段很像,但却不是....
看代码吧,一行命令实现:
 

复制代码代码如下:
awk -vFS="|"‘BEGIN{key[security]="SECURITY";key[vio]="VIO";key[deep]="AIX_DEEP"}{print key[$3]"|"$0}’datafile

说明:定义了一个关联数组,将所有的key和value添加到一个数组中,并以第三个字段作为下标。

(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容