从邮件日志中提取字符串

从邮件日志中提取字符串

我正在尝试从邮件日志文件中提取包含特定字符串(邮件地址)的所有文本行。我知道使用grep可以让我搜索地址[email protected],但如何让它打印出包含的整行[email protected]?这样我就可以轻松地搜索大量日志文件以获取有关fromto字段的精确信息,以便找出与谁有过[email protected]互动。

先感谢您。

答案1

grep "mail\.addres@example\.org" filename.log

将打印包含以下项的所有行[email protected]

答案2

简单的答案,使用awk

awk '/mail\.addres@example\.org/' file.log

答案3

显然,我来晚了,听起来和我一直在学习的东西很相似。我使用 sudo 是因为我不以 root 身份访问东西,但我想这是个人喜好:

sudo grep "[email protected]" /path/to/file/mail.log

输出被贴在终端上(不理想)。但我发现使用重定向>

> test.txt

是个好主意。使用命令产生结果,绕过终端窗口的输出并将其直接放入文件中,以便我稍后使用 notepad++ 打开。我在学习过程中确实遇到了一个和两个尖括号之间的区别,这非常方便:

>       # Overwrites destination file with current output
>>      # Adds current output to tail of file

当我不想在每次搜索时都创建新文件时,这非常方便。

相关内容