linux - 如何查找特定格式的数字并过滤掉特定范围的值?

标签 linux unix grep

如何找到 0.xzy 格式的数字,其中 xzy 是数字,x 是 8-9,并在每次匹配(包括)之前将 5 行写入 outputfile.txt

最佳答案

要查找 0.xzy 格式的数字(使用字边界而不强制整行匹配)并打印匹配 -B5 之前的第 5 行并将输出重定向到 outfile:

$ grep -B5 -Ew '0\.[0-9]{3}' file > outfile

# fix x to 8 or 9
$ grep -B5 -Ew '0\.[8-9][0-9]{2}' file > outfile

注意:. 需要转义以表示文字句点,否则 01234 将匹配。您会发现 man grep 非常有帮助!

关于linux - 如何查找特定格式的数字并过滤掉特定范围的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14853765/

相关文章:

linux - 在只读环境中启动 Gnome 3

linux - 如果不安装 Ubuntu 9.10,我在哪里可以下载 JDK?

c - Gtk 在单击按钮时更改多个标签

linux - 如果未设置环境变量,如何记录?

groovy - 我如何在 groovy 的 grep 中使用变量?

linux - 检查内核更新时间戳

c++ - 如何让我的 C++ 程序在 Unix 上编译?

shell - 用于处理管道的 xargs 替代方案

linux - 使用 grep 命令按首字母、@ 和 "."进行过滤

bash - 如何处理grep中的括号?