【发布时间】:2011-03-22 21:03:56
【问题描述】:
我有大约 20 个 CSV,看起来都像这样:
"[email]","[fname]","[lname]","[prefix]","[suffix]","[fax]","[phone]","[business]","[address1]","[address2]","[city]","[state]","[zip]","[setdate]","[email_type]","[start_code]"
我被告知我需要生成的是完全相同的东西,但现在每个文件都包含来自电子邮件匹配的每个其他文件的 start_code。
如果任何其他字段不匹配并不重要,只是电子邮件字段很重要,对每个文件的唯一更改是从电子邮件匹配的其他文件中添加任何其他 start_code 值。
例如,如果相同的电子邮件出现在 wicq.csv、oota.csv 和 itos.csv 中,则它在每个文件中将变为以下内容:
"anon@yahoo.com","anon",,,,,,,,,,,,01/16/08 08:05 PM,,"WIQC PDX"
"anon@yahoo.com","anon",,,,,,,,,,,,01/16/08 08:05 PM,,"OOTA"
"anon@yahoo.com","anon",,,,,,,,,,,,01/16/08 08:05 PM,,"ITOS"
到
"anon@yahoo.com","anon",,,,,,,,,,,,01/16/08 08:05 PM,,"WIQC PDX, OOTA, ITOS"
对于所有三个文件(wicq.csv、oota.csv 和 itos.csv)
我可以使用的工具有 OS X 命令行(awk、sed 等)以及 perl——虽然我对这两个都不太熟悉,但可能有更好的方法来做到这一点。
【问题讨论】:
-
所以这些修改
WIQC, PDX, OOTA, ITOS会在这三个 csv 文件中的每个人中出现? -
@安德斯,是的。 (虽然 WICQ PDX 是一个单一的修改,而不是您评论中提到的两个)。