我需要从一个文本文件中grep几个模式,这个文本文件由进程不断更新。在Unix上将动态模式粘贴到不同的文件上
所以我会做:
tail -f file1.txt | egrep --line-buffered 'pattern' | tee pattern.txt
我的问题是,这些模式需要从文件dinamically拍摄。即:
file1.txt:
2012-01-05 21:32:41 server1 some_text
2012-01-05 21:42:51 server1 some_text
2012-01-05 22:12:43 server2 some_text
2012-01-05 22:32:11 server3 some_text
2012-01-05 22:43:14 server3 some_text
2012-01-05 23:31:21 server2 some_text
2012-01-05 23:42:11 server1 some_text
现在我需要将这些行grep到三个分离的文件:server1.txt,server2.txt。 server3.txt,但“server1”,“server2”和“server3”是grep的模式,需要从file1.txt中以dinam取消。如果包含“serverx”的新行被添加到file1.txt中,我需要创建一个serverx.txt文件,并将file1.txt的输出重定向到这个新文件。
我想我需要tail,grep,awk的组合,但我不知道如何开始。
在此先感谢!
Fran。
从哪里开始? Perl,http://www.perl.org/ :) – zrvan 2012-01-05 13:20:38