在linux中解析文件:仅存储时间戳

在linux中解析文件:仅存储时间戳

我的一个目录中有 31 个文件。文件格式如下:

TimeStamop      user-id
1471417712595   1936f35c-XXXX-XXXX-XXXX-49898523b8ea
1471417717238   e3153e8d-XXXX-XXXX-XXXX-7710089c77bb
1471417718730   4e470320-XXXX-XXXX-XXXX-29bc448f09a1
1471417719211   e8b6a6c0-XXXX-XXXX-XXXX-dd68d836fb31
1471417723775   cbc009c1-XXXX-XXXX-XXXX-88cda2b1b812
1471417723775   cbc009c1-XXXX-XXXX-XXXX-88cda2b1b812
1471417725790   c332eba7-XXXX-XXXX-XXXX-509c42a621d1
1471417725522   4712acf1-XXXX-XXXX-XXXX-11a24bcbe7c8
1471417601920   502bc0dd-XXXX-XXXX-XXXX-eff38b468461
1471417604615   8c6b2ef9-XXXX-XXXX-XXXX-9efb1223e383

我只想从中获取时间戳信息,并希望使用 Linux shell 脚本将所有时间戳写入一个文件中。文件总大小(31 个文件大小)为 4.5 GB。我想要有效的方法来完成这项任务。我已经在 python 中完成了这个。但希望它在 shell 脚本中。

答案1

使用awk, 从包含文件的目录中:

awk 'FNR>1 {print $1}' * >output.txt
  • FNR>1匹配每个文件中记录号大于 1 的所有记录,即删除每个文件中的标头

  • 对于这些记录,{print $1}仅打印第一个字段,即时间戳

相关内容