为此,我正在编写一个 awk oneliner:
文件 1:
1 apple
2 orange
4 pear
Run Code Online (Sandbox Code Playgroud)
文件2:
1/4/2/1
Run Code Online (Sandbox Code Playgroud)
所需的输出: apple/pear/orange/apple
附录:缺失的数字最好保持不变 1/4/2/3 = apple/pear/orange/3 以防止信息丢失。
方法:
尝试:
gawk 'NR==FNR { key[$1] = $2 }; NR>FNR { r = gensub(/(\w+)/, "key[\\1]" , "g"); print r}' file1.txt file2.txt
#gawk because need to use \w+ regex
#gensub used because need to use a capturing group
Run Code Online (Sandbox Code Playgroud)
键[1]/键[4]/键[2]/键[1]
有什么建议?谢谢你。