Commande sed supprimer l'espaces entre les champs des lignes [Résolu/Fermé]

Signaler
Messages postés
16
Date d'inscription
mardi 1 mars 2016
Statut
Membre
Dernière intervention
5 mars 2016
-
Messages postés
35340
Date d'inscription
dimanche 7 novembre 2010
Statut
Non membre
Dernière intervention
6 août 2020
-
salut cher amis,
svp quelle est la commande qui permet d'eliminer les répétitions d'espaces entre les champs des lignes produits par la commande ls-l, en utilisant la commande sed sur le terminal?
et comment Supprimez le dernier caractère de chaque ligne?

4 réponses

Messages postés
1288
Date d'inscription
dimanche 21 septembre 2008
Statut
Contributeur
Dernière intervention
17 mars 2017
750
Bonjour,
supprimez le dernier caractère de chaque ligne:

sed 's/.$//' entree.txt > sortie.txt

J'ai pas compris la 1ere question (donner un exemple s.v.p).
Messages postés
35340
Date d'inscription
dimanche 7 novembre 2010
Statut
Non membre
Dernière intervention
6 août 2020
5 320
Messages postés
1288
Date d'inscription
dimanche 21 septembre 2008
Statut
Contributeur
Dernière intervention
17 mars 2017
750
Messages postés
16
Date d'inscription
mardi 1 mars 2016
Statut
Membre
Dernière intervention
5 mars 2016
4
merci cher amis,
je viens de resoudre mon probleme et en même temps avoir une bonne documentation sur la commande sed avec : https://doc.ubuntu-fr.org/sed

merci bien!!!!
Messages postés
35340
Date d'inscription
dimanche 7 novembre 2010
Statut
Non membre
Dernière intervention
6 août 2020
5 320
je viens de resoudre mon probleme
Et donner la solution, ce n'est pas au programme ?
Messages postés
1288
Date d'inscription
dimanche 21 septembre 2008
Statut
Contributeur
Dernière intervention
17 mars 2017
750
@Sjunior peux tu nous dire comment pour que d'autres puissent profiter de votre solution?
Messages postés
16
Date d'inscription
mardi 1 mars 2016
Statut
Membre
Dernière intervention
5 mars 2016
4
slaut smed_79,
tu tape : ls -l (afin de t'aperçevoir du changement apres le lancement de la deuxième commande)

ensuite la commande qui permet d'eliminer les répétitions d'espaces entre les champs des lignes produits par la commande ls-l est:
ls -l | sed s/" "/\/g

merci!!

stp smed_79, peux tu m'aider en medisant comment tu comprend ces lignes?
1. tr 'a,/' 'A;_' <fich1 >fich2
2. tr 'a-z' 'A-Z' <fich1 >fich2
3. tr -d '\011\015\032' <fich1 >fich2
4. tr -s ' \011\012' <fich1 >fich2
5. tr -cs 'a-zA-Z0-9' '\n' <fich1 | sort | uniq >fich2

car lorsque je les entres dans mon terminal, elles ne passent pas.

merci!!
Messages postés
35340
Date d'inscription
dimanche 7 novembre 2010
Statut
Non membre
Dernière intervention
6 août 2020
5 320
Merci du retour. Mais ta commande supprime tous les espaces, alors que ce qui est demandé c'est d'éliminer les répétitions d'espaces entre les champs des lignes ce qui n'est pas tout à fait pareil ;-(

Par contre concernant ta demande "stp smed_79, peux tu m'aider ", je regrette mais tu as déjà posé ta question , et comme il t'a été précisé, on ne fera pas ton exercice à ta place :