Commande sed supprimer l'espaces entre les champs des lignes

Résolu/Fermé
Sjunior Messages postés 16 Date d'inscription mardi 1 mars 2016 Statut Membre Dernière intervention 5 mars 2016 - 4 mars 2016 à 05:56
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 - 5 mars 2016 à 08:09
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?
A voir également:

4 réponses

smed_79 Messages postés 1288 Date d'inscription dimanche 21 septembre 2008 Statut Contributeur Dernière intervention 17 mars 2017 843
Modifié par smed_79 le 4/03/2016 à 07:08
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).
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
4 mars 2016 à 07:25
0
smed_79 Messages postés 1288 Date d'inscription dimanche 21 septembre 2008 Statut Contributeur Dernière intervention 17 mars 2017 843
4 mars 2016 à 07:54
en complément j'ajoute:
- http://www.linuxcertif.com/man/1/sed/
- https://www.commentcamarche.net/faq/sed-478
- https://doc.ubuntu-fr.org/sed
0
Sjunior Messages postés 16 Date d'inscription mardi 1 mars 2016 Statut Membre Dernière intervention 5 mars 2016 7
4 mars 2016 à 09:12
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!!!!
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
4 mars 2016 à 09:13
je viens de resoudre mon probleme
Et donner la solution, ce n'est pas au programme ?
0
smed_79 Messages postés 1288 Date d'inscription dimanche 21 septembre 2008 Statut Contributeur Dernière intervention 17 mars 2017 843
4 mars 2016 à 18:52
@Sjunior peux tu nous dire comment pour que d'autres puissent profiter de votre solution?
0
Sjunior Messages postés 16 Date d'inscription mardi 1 mars 2016 Statut Membre Dernière intervention 5 mars 2016 7
Modifié par Sjunior le 5/03/2016 à 07:39
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!!
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
5 mars 2016 à 08:09
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 :
0