从 Excel 列搜索日志

从 Excel 列搜索日志

我有一个生成的 mysql 报告。我将不得不从 mysql 报告中的电话号码搜索 catalina 日志,并在 Excel 工作表中显示所有信息。所以这就是它需要的样子

  1. 从 Excel 工作表中的第一个电话号码开始
  2. 在日志中搜索电话号码。
  3. 导出附加到 Excel 工作表的所有搜索并继续查找下一个电话号码?

有什么建议如何做到这一点?

我有 500 行电话号码。如果我 grep 1234567891。日志文件看起来像

2015-12-23 20:06:05 INFO  Thread-16 XXXX.XXXX.XXXX.Service - Caching location for person max:1234567891 as : 38.802710000000005,-77.63644000000001 

我必须搜索所有 500 个电话号码并获取此人的位置。

答案1

在没有看到数据格式的情况下很难提供实际的代码,但这就是我要做的。如果您可以发布更多详细信息,例如示例输入和预期输出,则可以给出更好的响应。

  1. 首先,将 Excel 转换为 csv 或任何其他可以在 Unix 上读取的分隔文本文件。在将文件引入 Unix 环境之前,您可能必须执行此操作。
  2. 用于awk从列中提取电话号码并grep在日志文件中查询包含该电话号码的行。

    grep -f <( awk -F, '{print $n}' filename.csv) logfilename >> outputfile

像这样的东西应该有效。替换$nn您的电话号码数据的列号。

相关内容