bash - 如何在bash中显示多个文件的尾部
问题描述
我正在尝试监视最新五个文件的进度,我想查看每个文件的最后几行。
我能够使用以下命令获取最新的五个文件:
ls *.log -lt | head -5
但我想遍历这五个文件并显示每个文件的最后 10 行。我想知道是否可以在单个 bash 命令而不是循环中完成。但如果它不能完成,我也会很感激一个 bash 循环实现
解决方案
tail
可以取多个文件名。
tail -n 10 $(ls -t *.log | head -5)
添加-F
以持续监控它们的变化。
如果文件名可能有空格xargs
会更健壮:
ls -t *.log | head -5 | xargs -d '\n' tail -n 10
推荐阅读
- javascript - 刷新后如何使javascript倒计时继续
- mysql - 如何获取所有父母ID
- c# - 试图从非常大的数据中检索mysql中多个相关表的数据
- sql-server - 如何使用 c#.net 从组合框中的 NpgsqlConnection 获取所有数据库的列表
- paw-app - Paw - 一种在请求之间移动时使所选请求/响应选项卡保持粘性的方法
- node.js - 登录后重定向到个人资料网址
- oauth-2.0 - LinkedIn API 未授权_范围_错误
- c - 在宏定义中转义结构字段
- python - 可以遍历具有不同名称工作表的 excel 文件并导入列表吗?
- angular - 将字符串 [] 数据发送到 api Angular 4