我使用join命令合并脚本中的多个文件。
while read line; do
join file1 "$line" > output
cat output > file1
done < list
问题是,随着循环的进行,越来越多的数据从输出文件中删除,因为并非所有条目都匹配所有数据文件。如何保存不匹配的数据并将其包含在输出文件中?
答案 0 :(得分:0)
man join
是你的朋友!我建议选择-a
:
-a file_number In addition to the default output, produce a line for each unpairable line in file file_number.
所以你应该使用:
while read line; do
join -a 1 file1 "$line" > output
cat output > file1
done < list