1

我有一个文件,其中每一行由一个由空格分隔的 16 个数字组成。我想找到序列中第 8 个数字的值为 500 的每一行。我可以使用什么 grep 正则表达式来执行此操作?

谢谢!

4

2 回答 2

3

您此时不仅仅是 grepping,而是在字段中分割行,这意味着您应该使用 awk:

cat 3.txt | awk '{if ($8 == "500") print $0}'
于 2013-09-24T22:52:40.387 回答
1

在 grep 中使用重复:

grep '^\([^ ]\+ \)\{7\}500 ' file

这意味着 7 列有一些东西,然后是 500 和一个空格。

于 2013-09-24T22:55:01.483 回答