我正在寻找类似 grep 的命令,它输出完整记录而不是固定数量的上下文行。
例如:
grep -d record_delimiter PATTERN [FILE]
逻辑:
- 根据 record_delimiter 将文件拆分为记录。
- 如果找到匹配项,则打印整个记录并跳至下一个
答案1
使用awk
和更改记录分隔符RS
,如下所示:
awk -v RS='/PATTERN/{打印$0"\n"}'[文件]
答案2
您还可以查看雷吉蒂斯,它提供了一些非常强大的、类似数据库的选项,用于查询和操作记录文件。