【发布时间】:2019-03-07 08:12:08
【问题描述】:
鉴于:
我的sha1_vsdt.csv 和trendx.log 文件中有这个字符串
这是我的 csv 文件中的示例
--------------------SHA-1---------------|-----VSDT-----
3ecca1d4af42561676de09019ddc94a52b49efcc|MS Office 1-0,
3f99507159f62331af7dedafeaac9da47fd9338b|MS Office 1-0,
3fdd26300c7f86c1a24dd8b13e99d5d7abea0604|WIN32 EXE 7-2,
4016bf58ee14e73cc42d8de918c6547c6b3b8f42|MS Office 1-0,
0e13d281af08954102e7caf95864ef553c7277bd|WIN32 EXE 7-2,
还有我的 trendx.log 文件中的示例:
1537762040 0 1 1 1537733240 1537733240 1537733240 8224 98 88064 0e13d281af08954102e7caf95864ef553c7277bd Troj.Win32.TRX.XXPE50FFF026 c:\users\administrator\desktop\downloader\download\ Troj.Win32.TRX.XXPE50FFF026 Administrator 0e13d281af08954102e7caf95864ef553c7277bd ACIKwAgACIAIAQAAMQAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
任务:
我的任务是匹配我的 SHA-1 列中的 SHA-1 字符串,并在我的 trendx.log 文件中找到它的匹配项,当它匹配时,它应该得到描述,然后将其放在第三列中,如下所示:
--------------------SHA-1---------------|-----VSDT-----|-------MATCH--------
3ecca1d4af42561676de09019ddc94a52b49efcc|MS Office 1-0,|undetected
3f99507159f62331af7dedafeaac9da47fd9338b|MS Office 1-0,|undetected
3fdd26300c7f86c1a24dd8b13e99d5d7abea0604|WIN32 EXE 7-2,|undetected
4016bf58ee14e73cc42d8de918c6547c6b3b8f42|MS Office 1-0,|undetected
0e13d281af08954102e7caf95864ef553c7277bd|WIN32 EXE 7-2,|TRENDX 172.20.4.179
如果未找到匹配项,则应将未检测到的放在第三列中。 我没有这样做的想法,我对python很陌生,任何想法都会对我很有帮助。
这是我的 csv 和日志文件的完整内容:
【问题讨论】:
-
请展示您从围绕这个问题的研究中实现的内容。大概您已经将这两个文件读入某种结构?
-
我找不到任何关于匹配字符串到日志文件中的研究,所以在这里我有了一个开始我的程序的想法
-
这是您问题的具体细节。您真正想要做的是将 csv 文件读入列表,然后将文本文件读入列表。遍历列表并使用
==在特定列表索引处查找字符串匹配项,并将结果附加到另一个列表。一旦你完成了这项工作,你就可以想办法让字典更有效率。关键是,不太可能存在适合您确切问题的预制解决方案,您只需要分解各个步骤,并且有大量关于如何阅读 CSV 的内容和示例 -
我明白你的概念,但我不知道如何开始
-
我看到你终于弄清楚了你的实际问题。也许这个问题现在应该被标记为stackoverflow.com/questions/52661863/… 的重复或干脆删除。