我有一个固定长度的格式文件:
Name Age Party Role
---------- ---------- ------------------ --------------
Shubham 27 XYZ User
Drek 28 ABC Admin
Raj 23 USR User
现在我想编写一个 shell 脚本/命令来输出一个包含所有年龄 <25 的缔约方的文件。在这种情况下,它应该打印如下内容:
Party
-----------------
USR
我是 awk 和 shell 的新手。我尝试使用 awk 和 substr,但它太贵了,因为我的文件很大(> 200000 行,多列)。有没有一种巧妙的方法来做到这一点?
更新
任何字段中都可以有空格。真正的想法是该文件是一个固定长度的文件。所以每条记录的长度是固定的(姓名:10,年龄:10,部分:20,角色:10)。但是,记录中可以包含任何内容,包括空格和空格。例如:
Name Age Party Role
---------- ---------- ------------------ --------------
Shub A 27 XYZ & A User
Drek GH 28 ABC & C Admin
Raj 23 USR User
等等。现在我想使用 Name 进行选择,这样我的脚本就会打印出 Name = "Shub A" 的 Party 记录。所以这里的输出应该是:
Party
-------------------
XYZ & A