说我有一个字典TSV文件dict.txt:
apple pomme
umbrella parapluie
glass verre
... ...
Run Code Online (Sandbox Code Playgroud)
和另一个list.txt包含单词列表的文件(从左栏开始dict.txt):
pie
apple
blue
...
Run Code Online (Sandbox Code Playgroud)
我想将它们翻译成右栏中的相应单词dict.txt,即:
tarte
pomme
bleu
...
Run Code Online (Sandbox Code Playgroud)
最简单的方法是什么?
你可以使用awk:
awk 'FNR==NR{a[$1]=$2;next} a[$1]{print a[$1]}' dict.txt list.txt
Run Code Online (Sandbox Code Playgroud)
编辑:如果需要在字典中使用tab se字段分隔符将多个单词(用空格分隔)作为单词含义,则可以使用:
awk -F '\t' 'FNR==NR{a[$1]=$2;next} a[$1]{print a[$1]}' dict.txt list.txt
Run Code Online (Sandbox Code Playgroud)