Chinaunix

标题: 呼叫大神 ---列值替换 [打印本页]

作者: xin2v    时间: 2018-11-20 10:24
标题: 呼叫大神 ---列值替换
如果文件3.txt第18列的值在4.txt的第二列有出现 则替换为 第四列的第一列的值  替换后如5.txt

3.txt   (AFG ALA出现在第18列)
"1"|"2"|"3"|..... "AFG"|"9"
"4"|"5"|"6"|..... "ALA"|"6"

4.txt
"AF"|"AFG"
"AX"|"ALA"

5.txt
"1"|"2"|"3"|..... "AF"|"9"
"4"|"5"|"6"|..... "AX"|"6"


作者: wh7211    时间: 2018-11-20 11:23
回复 1# xin2v


  1. awk 'BEGIN{FS=OFS="|"}FILENAME==ARGV[1]{a[$2]=$1;next}{$18=a[$18]?a[$18]:$18}1' 4.txt 3.txt
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2