Aller au contenu

supprimer les lignes vides dans un fichier


Messages recommandés

Voilà pareil.

Sinon

grep -vE "^$" FICHIER

Ou avec une super feinte :

grep '.' FICHIER

Et en awk :

awk '/./' FICHIER

Et enfin une version qui supprime lignes vides ET lignes ne contenant que des caractères d'espacement :

grep -Ev "^\s*$" smtp_state.pm

(Fonctionne aussi avec sed et awk)

Lien vers le commentaire
Partager sur d’autres sites

juste en passant, si tu as plein de lignes vides qui se suivent des fois par paquet de 2 3 ou plus ...

pour aller un poil plus vite tu commence par un coup de "uniq" sur le fichier (ça supprime les lignes identiques redondantes - en supposant qu'il n'y ait que des lignes vides en redondance)

uniq ton_fichier.txt | grep -v ^#

pour continuer la digression, uniq est pas mal aussi pour alléger des opérations mémoires lourdes

si tu as une liste en vrac et que tu veux juste chaque occurence possible, tu fais un "uniq | sort | uniq" ça peut être beaucoup plus rapide qu'un simple "sort | uniq" ... parceque sort n'aura pas à gérer un certain nombre de doublons successifs

(utile par exemple quand tu parse des logs et que tu veux la liste des machines ou process qui en émettent, ou la liste des émetteurs de mail, etc.)

:transpi:

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...