我有两个非常庞大的Excel文档。
以下只是其中的数据样本。
文件1包含:
base_id
bd9ce21c-bc57-4e21-adf9a9693cbc
5b0a3d79-ff6a-41fd-a28aa6a92164
b7d80042-1fcf-4661-21d7dd5b1fbd
B211B098-0544-4CDF-A2F93EAD22A4
4FB55FE5-AE6A-425F-8B31E345181A
文件2包含:
path_id gate_no count text_id
54ecfc619d1333b86a3a9cd9 3816 0 {"abcd":"50C53378-5833-4827-9C2F-3211D3F42F13" abcd_tub:"831e590de0cc185248f4208fc5d5ee89d2d" abcd_cub:"1537fe51004bae1e71480b154372"}
54ecfc619d1333b86a3a9cd9 3005 0 {"bolt":"66db1807f1e4a072744a77fd8429b5" mega:"a1cd73b41d6b3eae97dbbdd76e323a44ab5140"}
54ecfc619d1333b86a3a9cd9 2595 0 {"bolt":"c58634ccdcb5e81eb0b447679b756" mega:"32b74bf7024944b457c69c000e44d43"}
54ecfc619d1333b86a3a9cd9 2220 0 {"bolt":"acf98549461b87bcfe2c5190d6c" mega:"2c1c788440d85ea70597ce135ccf2316748f"}
54ecfc619d1333b86a3a9cd9 2160 0 {"abcd":"16F8E7-F395-4551-B8C7-5FC8B" abcd_tub:"a5301e4dfc6bad809a2917f495fc6f7" abcd_cub:"4e5da03ffb35a0f17726acb60c8dc"}
我需要做的是:
检查文档1中的base_id是否存在于文档2的任何行中。
如果存在,请获取base_id列和行
如果它不存在,请仅获取base_ids列表。
在EXCEL中进行上述比较的最佳方法是什么? 如果不是excel,是否有我可以查看的示例脚本示例?
感谢任何帮助。
由于
答案 0 :(得分:1)
我假设你的文件看起来与问题完全一样(它们可以有逗号而不是标签 - 但它们需要是文本的,而不是Excel格式的。)
效率并不高,但如果文件不长,那就无所谓了 希望我理解你正在努力实现的目标:
#!/bin/bash
set -e
file1="file1"
file2="file2"
for id in $(tail -n+2 "${file1}"); do
if ! grep "${id}" "${file2}"; then
echo "${id}"
fi
done
顺便说一下,在你的例子中,file2中没有base_id
。