bash - 使用tail用最后4行覆盖文件以制作日志
问题描述
您好我正在尝试制作一个将消息写入 .plan 文件的 bash 脚本。我想将文件限制为五行。到目前为止,我已经尝试在 bash 中使用 tail 命令。
if [ $(cat .plan | wc -l) -eq 5 ]; then
tail -n 4 .plan > .plan
fi
但是,这只会覆盖文件并输入一行而不是四行。
解决方案
因此,由于不必创建临时文件,我发现这也可以
echo "$(tail -n 5 .plan)" > .plan
推荐阅读
- sql-server - 从 WSL 2/Ubuntu sqlcmd 连接到在 Windows 主机上运行的 SQL Server
- react-native - 堆栈导航器使用 useEffect 反应导航身份验证流程
- gitlab-ci - Gitlab CI无法在包含项目中使用变量作为分支引用
- android - 在颤动中从父小部件重置子小部件
- python - 如果数组列表的长度非常大,如何以更快的方法检查输入数组是否与数组列表最相似?
- javascript - 发送电子邮件和调用模式后,提交按钮需要永久禁用
- regex - 如何检查字符串是否包含在 RegExp 中传递的字符?
- event-sourcing - EventStore - 使用什么版本?
- python-3.x - 停止程序后是否有保留字/关键字继续?
- html - 即使正确的网格系统,Bootstrap4 列也会堆叠而不是并排放置