获取执行命令时写入的日志条目



我有一个写到/var/log中的文件的服务。出于测试目的,我正在寻找一种方法来提取在对服务执行命令时编写的日志行。我知道我可以用一个使用fseek/ftell的C程序来完成它,但这需要在VM中使用额外的工具。我更喜欢纯bash解决方案(bash 4.4, Ubuntu 18.04)。我想也许使用tail -f可能会起作用,但我不能确切地弄清楚如何工作。

可以使用diff命令。它接受2个文件作为输入,并打印不同的行。您可以在服务执行前复制日志文件,并在执行后与原始文件进行比较。

$ cat > logfile
line 1
line 2 asdf
$ cp logfile logfile-old
$ cat >> logfile
Third one.
Oups. Error occured.
$ diff logfile logfile-old
3,4d2
< Third one.
< Oups. Error occured.

最新更新