重定向文件中与特定值匹配的记录

时间:2014-02-05 07:54:33

标签: linux bash shell unix

我有一个文件,我希望将文件中的所有记录从第67位切换到第69位,与“926”匹配,第179位第182位与“0044”相匹配。如何实现这一点。有人可以帮助我吗?

2 个答案:

答案 0 :(得分:2)

  

i want to extract all those records where 10-12 position 111 and 21 to 23rd position 776 is there.

你可以通过awk:

来做到这一点
awk 'substr($0, 10, 3) == "111" && substr($0, 21, 3) == "776"' file

答案 1 :(得分:1)

在评论中使用grep作为示例:

grep '.\{9\}111.\{8\}776' input

对于原始问题:

grep '.\{66\}926.\{112\}0044' input

更容易一些,所以你不需要做减法:

grep '.\{66\}926' | grep '.\{178\}0044' input