Fractionner un fichier texte dans la moitié (ou tout pourcentage) sur Ubuntu Linux
Si vous avez un fichier texte compliqué que vous essayez de traiter, la divisant en sections peut parfois aider le temps de traitement, surtout si nous allions à importer un fichier dans un tableur. Ou vous pouvez simplement récupérer un ensemble particulier de lignes à partir d'un fichier.
Entrez scission, wc, de la queue, le chat, et grep. (Ne pas oublier sed et awk). Linux contient un riche ensemble d'utilitaires pour travailler avec des fichiers texte sur la ligne de commande. Pour notre tâche aujourd'hui, nous allons utiliser split et wc.
Nous avons d'abord jeter un oeil à notre fichier log ....
> Ls-l
-Rw-rr-1 thegeek ggroup 42046520 19/09/2006 11:42 access.log
Nous voyons que la taille du fichier est 42Mo. C'est un peu gros ... mais combien de lignes avons-nous affaire? Si nous voulions importer dans Excel, nous aurions besoin de le tenir moins de 65k lignes.
Voyons maintenant le nombre de lignes dans le fichier en utilisant l'utilitaire wc, qui signifie «mot compte».
> Wc-l access.log
146330 access.log
Nous avons largement dépassé notre limite. Nous aurons besoin de diviser cela en trois segments. Nous allons utiliser l'utilitaire split pour ce faire.
> Split-l 60000 access.log
> Ls-lau total 79124
-Rw-rw-r-1 thegeek ggroup 40465200 19/09/2006 12:00 access.log
-Rw-rw-r-1 thegeek ggroup 16598163 19/09/2006 12:05 xaa
-Rw-rw-r-1 thegeek ggroup 16596545 19/09/2006 12:05 xab
-Rw-rw-r-1 thegeek ggroup 7270492 19/09/2006 12:05 xac
Nous avons maintenant divisé nos fichiers texte dans trois fichiers distincts, chacun contenant moins de 60000 lignes, ce qui semblait être un bon nombre de choix. Le dernier fichier contient la quantité restante. Si vous alliez couper ce fichier en particulier dans la moitié, vous auriez fait cela:
> Split-l 73165 access.log
Et, c'est tout ce qu'il ya à faire.
Commentaires
Enregistrer un commentaire