Анализ файла в 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. Общий размер файла (размер 31 файла) составляет 4,5 ГБ. Мне нужен эффективный метод для выполнения этой задачи. Я сделал это в Python. но хочу это в скрипте оболочки.

решение1

С помощью awk, из каталога, содержащего файлы:

awk 'FNR>1 {print $1}' * >output.txt
  • FNR>1сопоставляет все записи с номером записи больше 1 из каждого файла, т.е. это позволяет избавиться от заголовка из каждого файла

  • Для этих записей {print $1}печатается только первое поле, в котором указаны временные метки.

Связанный контент