【问题标题】:Get the row and filename where the first position and last position has a value with grep使用 grep 获取第一个位置和最后一个位置具有值的行和文件名
【发布时间】:2014-08-26 10:13:02
【问题描述】:

我想知道如何在行的第一个位置以 0(位置 1)开始,并且在位置 34(最后一个位置)有 2 的文件中找到一个值(在 Unix 中使用 grep)。

例如。

0000014081472505        00267522
2100010000HCGH09730ASCTBBEONTVA0
10000430030307134 EUR0BE       5
2300010000BE81000090765324     9

结果将是

0000014081472505        00267523

我不是使用正则表达式的专家。

【问题讨论】:

  • 我猜你在想要的结果中有一个类型。它应该是 ...22 而不是 ...23

标签: regex unix grep


【解决方案1】:

如果大小无关紧要 (xD):

$ grep "^0.*2$" file
0000014081472505        00267522

如果要注明尺寸:

$ grep -E "^0.{30}2$" file
0000014081472505        00267522

awk:

$ awk -v FS= '$1==0 && $32==2' file
0000014081472505        00267522

【讨论】:

  • 有效。提前致谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-23
相关资源
最近更新 更多