用于获取文件添加行的shell脚本

时间:2011-01-19 16:20:05

标签: shell

我得到一个我必须处理的大型日志文件。 一个星期后,我会得到一个新的。添加新行(日志)也是如此。

我只需要新添加的行。

我该怎么做?

编辑:我到目前为止尝试过sed但没有成功

4 个答案:

答案 0 :(得分:1)

diff允许您查找这些文件之间的任何和所有差异,只要更改仅限于添加和/或删除的行。在大多数Linux发行版中,它都是GNU diffutils的一部分,但它几乎存在于每个类似Uinix的系统中。

答案 1 :(得分:0)

如果将行附加到日志文件中,并且我认为您有旧行,则可以尝试:

tail -$(( $(cat newLogFileName | wc -l)-$(cat oldLogFileName | wc -l) )) newLogFileName

答案 2 :(得分:0)

comm -13 oldfile newfile将为您提供仅出现在新文件中的行。

答案 3 :(得分:0)

# get new.log
tail -n+$(($(wc -l < old.log)+1)) new.log
mv new.log old.log