读书人

awk,该如何解决

发布时间: 2012-02-08 19:52:21 作者: rapoo

awk
145608514|8966854|3
12419277|11268992|122

如何把上面的文本变成下面的

145608514|8966854|.3.
12419277|11268992|.122.

就是把第三个字段的两边加上"."

[解决办法]

C/C++ code
awk -F\| '/./{print $1 "|" $2 "|." $3 "."}' yourDataFile
[解决办法]
awk -F\| 'BEGIN{OFS="|"}{$3="."$3"."; print $0}' infilename > outfilename
如:#cat aa
145608514|8966854|3
12419277|11268992|122
#awk -F\| 'BEGIN{OFS="|"}{$3="."$3"."; print $0}' aa
145608514|8966854|.3.
12419277|11268992|.122.
#awk -F\| 'BEGIN{OFS="|"}{$3="."$3"."; print $0}' aa > bb
#cat bb
145608514|8966854|.3.
12419277|11268992|.122.

读书人网 >UNIXLINUX

热点推荐