如何使用Grep + cut + sort with Colour



我正在监视邮件服务器上的登录(最近的妥协)

它工作得很好,只是理想情况下,我想颜色代码一个特定的IP地址,所以我可以很容易地看到任何IP地址连接不从内部IP地址。

我正在运行的命令:

grep -Hrn "Login:" /var/log/maillog | cut -d ' ' -f 8,10 | sort -u

看:

watch "grep -Hrn "Login:" /var/log/maillog | cut -d ' ' -f 8,10 | sort -u"

如何用特定的颜色突出显示特定的IP地址。例如

输出如下:

user=<Email1@Doamin.co.uk>, rip=123.123.123.123,
user=<Email1@Doamin.co.uk>, rip=321.321.321.321,
user=<Email2@Doamin.co.uk>, rip=123.123.123.123,
user=<Email2@Doamin.co.uk>, rip=111.111.111.111,
user=<Email3@Doamin.co.uk>, rip=123.123.123.123,
user=<Email4@Doamin.co.uk>, rip=123.123.123.123,
user=<Email4@Doamin.co.uk>, rip=198.1987.198.198,
user=<Email4@Doamin.co.uk>, rip=81.81.81.81,

假设内部IP地址为:123.123.123.123我怎么能得到输出自动颜色代码的IP地址。

人们在现场工作,也有电子邮件在手机上,我希望看到几个不同的IP地址来自相同的电子邮件地址,但如果我们有一个完整的房子,一般每个人都在Wifi和设备上连接在同一个网络上,只是想方便查看

根据下面的几个答案,在Watch中需要-c和grep -z来突出显示结果,但不改变输出。

watch -c "grep -Hrn --color=always "Login:" /var/log/maillog | grep --color=always -z "123.123.123.123" | cut -d ' ' -f 8,10 | sort -u"

将选项-c(解释ANSI颜色和样式序列)添加到watch命令中,并将--color=always添加到GNUgrep命令中。

尝试使用grep--color='always'和匹配你的IP-ADRESSE

a=$(somecommand)
red="e[31m" #or other color codes
echo -e "${red}$a"

最新更新