linux - 如何使用 grep 命令将 docker 日志重定向到文本文件?
问题描述
为了从 docker 日志中查找特定日志,我将 grep 与 docker 日志一起使用,如下所示
docker logs -f docker_container 2>&1 | grep "KafkaRecordGenerator:197"
这在控制台中给出了正确的结果。我需要将这些日志重定向到一个文本文件。为此,我使用了以下命令
docker logs -f docker_container 2>&1 | grep "KafkaRecordGenerator:197" >> test.txt
此处创建了新文件 test.txt,但输出未重定向到 test.txt 文件。如何使用 grep 命令将 docker 日志重定向到文本文件?
解决方案
根据 anemyte 的评论, --line-buffered with grep 命令解决了我的问题。最后的命令是,
docker logs -f docker_container 2>&1 | grep --line-buffered "KafkaRecordGenerator:197" >> test.txt
推荐阅读
- javascript - 通过 ObjectId 找到的 MongoDB 在 Javascript 中不起作用
- mysql - 由于操作系统错误 105,MySQL 服务将不再启动
- powershell - 使用 Powershell 将目录路径(字符串)拆分为两个字符串
- c# - 使用 Firebase 数据的 ASP.NET C# 中的饼图
- javascript - pg client.query() 不等待 await
- vue.js - v-data-table 上的自定义滚动条
- python - 使用字典更新列表值的numpy数组列表
- windows - 使用 Powershell 创建 GPOS
- python - Pandas 将两列合并到另一个 Dataframe 列
- angular - 可重复使用的 Angular 11 模板