[script shell] [Résolu/Fermé]
Signaler
aruju
aruju
- Messages postés
- 2213
- Date d'inscription
- dimanche 29 octobre 2006
- Statut
- Contributeur
- Dernière intervention
- 15 novembre 2014
aruju
- Messages postés
- 2213
- Date d'inscription
- dimanche 29 octobre 2006
- Statut
- Contributeur
- Dernière intervention
- 15 novembre 2014
10 réponses
Marc
Bonjour,
cat monFichier | grep -iv "^$" > monNouveaFichierSansLignesVides
(y'a des meilleures solutions)
Bonne journée
cat monFichier | grep -iv "^$" > monNouveaFichierSansLignesVides
(y'a des meilleures solutions)
Bonne journée
jeanbi
- Messages postés
- 14708
- Date d'inscription
- samedi 9 décembre 2006
- Statut
- Contributeur
- Dernière intervention
- 30 décembre 2020
bonjour,
un simple editeur de texe, te permets de faire cela .
a+
un simple editeur de texe, te permets de faire cela .
a+
aruju
- Messages postés
- 2213
- Date d'inscription
- dimanche 29 octobre 2006
- Statut
- Contributeur
- Dernière intervention
- 15 novembre 2014
un simple editeur de texe, te permets de faire cela .
oui à la main
oui à la main
aruju
- Messages postés
- 2213
- Date d'inscription
- dimanche 29 octobre 2006
- Statut
- Contributeur
- Dernière intervention
- 15 novembre 2014
merci Marc mais ton script ne me permet pas d'enlever tous les espaces..
exemple:
entre la 1ere et 2eme ligne j'ai une 10aine de lignes vides et ta commande me permet d'enlever que 5 lignes vides
exemple:
entre la 1ere et 2eme ligne j'ai une 10aine de lignes vides et ta commande me permet d'enlever que 5 lignes vides
Marc
grep -iv tonFichier "^ *$" > tonNouveauFichier
Effectivement, j'avais oublié les lignes avecs des ' '.
Petite explication :
'^' = début de ligne
' ' = caractère espace
'*' = 0 a infini de fois caractère précédent, donc le ' '
'$' = fin de fichier
Pour plus d'infos : man grep
Bonne journée !
Effectivement, j'avais oublié les lignes avecs des ' '.
Petite explication :
'^' = début de ligne
' ' = caractère espace
'*' = 0 a infini de fois caractère précédent, donc le ' '
'$' = fin de fichier
Pour plus d'infos : man grep
Bonne journée !
lami20j
- Messages postés
- 21331
- Date d'inscription
- jeudi 4 novembre 2004
- Statut
- Modérateur, Contributeur sécurité
- Dernière intervention
- 30 octobre 2019
Salut,
y'a des meilleures solutions
pas besoin de cat :-)
y'a des meilleures solutions
pas besoin de cat :-)
lami20j@deb:~/trash$ cat fichier jsdklfjsdkl sdkfjklsd sdkfjlsd lami20j@deb:~/trash$ grep -v '^$' fichier jsdklfjsdkl sdkfjklsd sdkfjlsd lami20j@deb:~/trash$ grep -v '^$' fichier > resultat lami20j@deb:~/trash$ cat resultat jsdklfjsdkl sdkfjklsd sdkfjlsd lami20j@deb:~/trash$aussi avec sed, modification sur place, le fichier original sera sauvegarder avec l'extension .orig
lami20j@deb:~/trash$ cat fichier jsdklfjsdkl sdkfjklsd sdkfjlsd lami20j@deb:~/trash$ sed -i.orig '/^\s*$/'d fichier lami20j@deb:~/trash$ cat fichier jsdklfjsdkl sdkfjklsd sdkfjlsd lami20j@deb:~/trash$ cat fichier.orig jsdklfjsdkl sdkfjklsd sdkfjlsd lami20j@deb:~/trash$
lami20j
- Messages postés
- 21331
- Date d'inscription
- jeudi 4 novembre 2004
- Statut
- Modérateur, Contributeur sécurité
- Dernière intervention
- 30 octobre 2019
pour prendre en compte aussi les eventuels espaces avec grep
grep -v '^ *$' fichier > resultat
aruju
- Messages postés
- 2213
- Date d'inscription
- dimanche 29 octobre 2006
- Statut
- Contributeur
- Dernière intervention
- 15 novembre 2014
merci a vous deux :-) les deux commandes marche, cela dit la solution de lami20j (avec le sauvegarde de fichier d'origine) c'est ce que j'ai cherché
merci encore
merci encore
jipicy
- Messages postés
- 40805
- Date d'inscription
- jeudi 28 août 2003
- Statut
- Modérateur
- Dernière intervention
- 10 août 2020
Salut,
Un peu tard, mais au besoin : sed trucs et astuces#suppression
;-))
Un peu tard, mais au besoin : sed trucs et astuces#suppression
;-))