我想编写一个执行以下操作的脚本(在基于Linux的系统上):


我有一个远程计算机列表,例如mc1,mc2,mc3等
在每台机器上,我都有一个日志文件,例如/var/log/mail.log
我有一个唯一的ID
该唯一ID将仅出现在任何这些计算机上的一个日志文件中
现在,我必须在存储在这些计算机上的所有那些日志文件中搜索此ID,并获取匹配的行。


我正在考虑使用bash / grep / ssh来执行此操作,但是不知道如何:(
谁能帮我解决这个问题:)

最佳答案

您可以尝试以下方法:

ssh user@mc1 -c "echo "Machine: mc1; grep $UNIQUE_ID /var/log/mail.log; echo ---------;"
ssh user@mc2 -c "echo "Machine: mc2; grep $UNIQUE_ID /var/log/mail.log; echo ---------;"
ssh user@mc3 -c "echo "Machine: mc3; grep $UNIQUE_ID /var/log/mail.log; echo ---------;"
ssh user@mc4 -c "echo "Machine: mc4; grep $UNIQUE_ID /var/log/mail.log; echo ---------;"

10-02 02:43
查看更多