【发布时间】:2015-04-16 13:21:51
【问题描述】:
我有这个问题,我还没有解决...我想操作这些文件...如果 file1 的第一列与 file2 中的任何字符串匹配,则将其替换为 file1 的第二列...然后折叠它(我的意思是,我只需要 output_file 的第二列中的每个字段或“单元格”的唯一值)..
哪种语言解决这个问题并不重要(awk、perl、python)...文件包含 100000 行或更多...我一直在尝试单行 awk 脚本,但没有...
任何帮助表示赞赏。
问候
file1.txt
ID100000360640 ITEM1;ITEM2
ID100000360638 ITEM1;ITEM3
ID100000360644 ITEM1;ITEM4
ID100000363115 ITEM5;ITEM2;ITEM3
ID100000363116 ITEM1;ITEM7
ID100000382126 ITEM8;ITEM1
ID100000002165 ITEM1;ITEM2;ITEM3;ITEM9
ID100000002596 ITEM1;ITEM10
ID100000003084 ITEM1
file2.txt
ID200000000419 ID100000360638;ID100000360640;ID100000360644;ID100000394921
ID200000000938 ID100000363115;ID100000363116;ID100000363117;ID100000382126
ID200000001036 ID100000002165;ID100000398119
output_expected.txt
ID200000000419 ITEM1;ITEM3;ITEM1;ITEM2;ITEM1;ITEM4;ID100000394921
ID200000000938 ITEM5;ITEM2;ITEM3;ITEM1;ITEM7;ID100000363117;ITEM8;ITEM1;
ID200000001036 ITEM1;ITEM2;ITEM3;ITEM9;ID100000398119
processed_output.txt
ID200000000419 ITEM1;ITEM2;ITEM3;ITEM4;ID100000394921
ID200000000938 ITEM1;ITEM2;ITEM3;ITEM5;ITEM7;ITEM8;ID100000363117;
ID200000001036 ITEM1;ITEM2;ITEM3;ITEM9;ID100000398119
谢谢
【问题讨论】:
-
欢迎来到 Stack Overflow!看起来您希望我们为您编写一些代码。虽然许多用户愿意为陷入困境的程序员编写代码,但他们通常只会在发布者已经尝试自己解决问题时提供帮助。展示这项工作的一个好方法是包含您迄今为止编写的代码、示例输入(如果有的话)、预期输出和您实际获得的输出(控制台输出、堆栈跟踪、编译器错误 - 不管是什么适用的)。您提供的详细信息越多,您可能收到的答案就越多。
-
嗨,欢迎来到 Stack Overflow。我们不会为您编写代码,但如果您向我们展示您的 awk 脚本,我们可以帮助您弄清楚如何使它们工作。
-
当然......我尝试了 awk 但我不能(我想要那样)......然后我尝试了这个......同时阅读 col1 col2;做猫文件2.txt | sed -i s/$col1/$col2/g file2.txt ; done
-
将上述评论添加到您的问题中。