Comment puis-je analyser extrêmement grand (70 + Go).fichiers txt ?

J'ai plusieurs fichiers .txt avec>30 millions de lignes chacun, et de 20 à 40 "colonnes" (certaines séparées par des virgules, d'autres séparées par des espaces, toutes en ASCII avec des lignes séparées par une nouvelle ligne). Je n'ai pas besoin de toutes (ou même de la plupart) des colonnes, et certaines d'entre elles ont des espaces nuls remplis de NULL.

Mes objectifs sont de:

  1. Supprimez les colonnes dont je n'ai pas besoin
  2. Réorganiser les colonnes comme bon me semble (pour plus de lisibilité)
  3. Sortie du tuyau vers un autre.txt fichier, avec des colonnes délimitées par des deux-points

Je viens de le faire avec un gros fichier texte en le divisant en ~ 40 .txt fichiers de 1 000 000 lignes chacun, en les important un par un dans Excel et en utilisant la CONCATÉNATION, mais cette approche n'a donné aucun fruit avec ma prochaine cible. Le fichier est séparé par des virgules, mais doit toujours être converti de .txt en .csv, et Excel s'étouffe dessus pendant le processus d'importation; même si je l'ai obtenu dans Excel, le fichier principal se décompose en plus de 200 fichiers plus petits respecter la limite de ligne supérieure d'Excel et faire la même chose plus de 200 fois n'est pas efficace.

Je travaille sur un MacBook Pro fin 2020 et je ne connais pas assez les langages de codage pour même savoir par où commencer, mais je suis semi-à l'aise dans les scripts shell et toujours à l'aise pour apprendre de nouvelles astuces, je ne sais pas par où commencer.

demandé sur