Я просмотрел ответы в этой полезной ветке , но моя проблема, похоже, иная, поэтому я не могу придумать хорошего ответа (по крайней мере, с sed
).
У меня есть большой файл CSV (200+ ГБ) со строками, которые выглядят следующим образом:
<alphanumerical_identifier>,<number>
где <alphanumerical_identifier>
уникально для всего файла. Я хотел бы создать отдельный файл, который заменяет первый столбец индексом , т.е.
<index>,<number>
так что мы получаем:
1, <number>
2, <number>
3, <number>
Может awk
генерировать увеличивающийся индекс без загрузки полного файла в память?
Поскольку индекс увеличивается монотонно, может быть, даже лучше просто удалить индекс. Будет ли решение для этого быть другим?
<number>
<number>
<number>
awk -F, '{print ++n, $2}'
бы сработало. Или awk -F, '{print $2}'
для второго варианта.
FNR
бы так же хорошо, как и++n