结合tail和sed命令并将它们重定向到新文件

时间:2014-11-13 09:23:14

标签: shell sed tail

我连接到多个远程服务器并使用tail命令向本地系统显示日志文件。由于所有日志文件都是动态生成的,因此我们无法区分它们。所以我想将日志文件和serevrid重定向到每行日志文件到其他临时文件然后将尾部临时文件,以便在本地机器上我们可以区分不同的服务器日志文件。

我正在使用

(sed -e '/s/^/192.168.12.1' /logs/a.log; tail -f /logs/a.log) > b.log
tail -f b.log

但是现在只有很少的起始行用serverid更新,而不是动态生成后的所有行。请告诉我如何将serverid与每行日志文件连接起来。

2 个答案:

答案 0 :(得分:0)

sed --unbuffered -e 's/^/192.168.12.1/' /logs/a.log >> b.log
tail -f b.log
如果你想要一个简单的文件

就足够了

sed --unbuffered -e 's/^/192.168.12.1/' /logs/a.log 

将正常工作

答案 1 :(得分:0)

我得到了答案。我通过使用代码来获取我的模式:

tail -f '/logs/alog' | sed 's/^/'192.168.12.1'/' >> b.log
tail -f b.log