使用尾部覆盖最后4行的文件以记录日志

时间:2018-09-17 16:21:23

标签: bash shell

嗨,我正在尝试制作一个bash脚本,将消息写入.plan文件。我想将文件限制为五行。到目前为止,我已经尝试在bash中使用tail命令。

if [ $(cat .plan | wc -l) -eq 5 ]; then
    tail -n 4 .plan > .plan
fi

但是,这只会覆盖文件并输入一行而不是四行。

2 个答案:

答案 0 :(得分:1)

因此不必创建临时文件,我发现它也可以工作

echo "$(tail -n 5 .plan)" > .plan

答案 1 :(得分:0)

无需预先检查尺寸...

$ tail -n5 .plan > temp && mv temp .plan