如何将文件保存在N行以下?

eip*_*puz 0 bash

我有一个应该有最新N个条目的日志.如果文件有点大几次没有问题.

我的第一次尝试是定期运行:

tail -n 20 file.log > file.log
Run Code Online (Sandbox Code Playgroud)

不幸的是,这只是清空文件.我可以:

tail -n 20 file.log > .file.log; mv .file.log file.log
Run Code Online (Sandbox Code Playgroud)

然而,这看起来很混乱.有没有更好的办法?

alx*_*lxp 6

听起来你正在寻找logrotate.