Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 如何知道我的文件翻译是否正确_Bash_Shell_Awk - Fatal编程技术网

Bash 如何知道我的文件翻译是否正确

Bash 如何知道我的文件翻译是否正确,bash,shell,awk,Bash,Shell,Awk,我使用这个命令循环文件2,存储一个数组,然后 转到文件1并用其在数组中的值替换该字段 awk 'NR==FNR {a[$2]=$1; next} $1=a[$1]' file2 file1 > new_file 有关文件外观的更多信息,请访问(上一篇文章) 我的问题是,是否有办法知道翻译是否在每个领域都正确完成。我有很多文件,我不能100%确定我的字典(文件2)是否包含所有信息 我知道如果在file2中找不到值,我将在新文件中得到一个空白字段。有没有办法改变这一点(添加一个空格)并添加其

我使用这个命令循环文件2,存储一个数组,然后 转到文件1并用其在数组中的值替换该字段

awk 'NR==FNR {a[$2]=$1; next} $1=a[$1]' file2 file1 > new_file
有关文件外观的更多信息,请访问(上一篇文章)

我的问题是,是否有办法知道翻译是否在每个领域都正确完成。我有很多文件,我不能100%确定我的字典(文件2)是否包含所有信息

我知道如果在file2中找不到值,我将在新文件中得到一个空白字段。有没有办法改变这一点(添加一个空格)并添加其他内容,比如一个单词,这样我就可以在我所有的文件中使用grep这个单词,看看是否正确


提前感谢

您可以这样使用您的awk:

awk 'NR==FNR{a[$2]=$1; next} ($1 in a){$1=a[$1];print;next} {print "NOT FOUND"}' file2 file1

然后,您将在文件1中的记录的输出中获得
未找到
,该记录在文件2中未找到。

也可以保留原始密钥,以便查看未找到的密钥。