J'ai parcouru les réponses dans ce fil utile , mais mon problème semble être suffisamment différent pour que je ne puisse pas penser à une bonne réponse (au moins avec sed
).
J'ai un gros fichier CSV (200+ Go) avec des lignes qui ressemblent à ceci:
<alphanumerical_identifier>,<number>
où <alphanumerical_identifier>
est unique sur l'ensemble du fichier. Je voudrais créer un fichier séparé qui remplace la première colonne par un index , c'est-à-dire
<index>,<number>
pour que nous obtenions:
1, <number>
2, <number>
3, <number>
Peut awk
générer un index croissant sans charger le fichier complet en mémoire?
Étant donné que l'indice augmente de façon monotone, il peut être encore mieux de simplement laisser tomber l'indice. La solution serait-elle si différente?, À savoir:
<number>
<number>
<number>
awk -F, '{print ++n, $2}'
cela fonctionnerait. Ou awk -F, '{print $2}'
pour la deuxième variation.
FNR
cela servirait aussi bien que++n