awk 替换字符串

发布时间 2023-09-07 10:24:09作者: boye169

test.txt

Test|A|0|zhangsan
Test|B|0|liming
Test|C|1|lisi

 sub替换

cat test.txt |awk -F'|' '{sub("A","90",$2);sub("B","80",$2);sub("C","60",$2);print $0}'

Test 90 0 zhangsan
Test 80 0 liming
Test 60 1 lisi

if语句替换

cat test.txt |awk -F'|' '{if($2=="A")print $1,"90",$3,$4;else if($2=="B")print $1,"80",$3,$4;else if($2=="C")print $1,"60",$3,$4;else print $0}'

Test 90 0 zhangsan
Test 80 0 liming
Test 60 1 lisi