logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 02-12-2019 07:15:19

Anonyme
Invité

[Résolu] enlever les espaces pour un tiret

Bonjour,


j'ai :

total=$(lsdvd /dev/sr0 | awk '/Length:/  {print $2}' | tr -d ',')



01 02 03




mais je n'arrive pas pour la suite à obtenir ceci :

01-02-03



(il faut obligatoirement que tout soit bien serré.

une idée ?

Dernière modification par Anonyme (02-12-2019 11:10:07)

#2 02-12-2019 09:19:31

fabi1
Membre
Distrib. : Debian GNU/Linux 9.8 (stretch) x86_64
Noyau : Linux 4.9.0-8-amd64
Inscription : 24-03-2019

Re : [Résolu] enlever les espaces pour un tiret

Bonjour,
avec sed:

~ jt'écoute :echo "01 02 03"|sed  's/ /_/g'
01_02_03
~ jt'
écoute :
 

Dernière modification par fabi1 (02-12-2019 09:19:52)

Hors ligne

#3 02-12-2019 10:10:50

otyugh
CA Debian-Facile
Lieu : Quimperlé/Arzano
Distrib. : Debian Stable
Inscription : 20-09-2016
Site Web

Re : [Résolu] enlever les espaces pour un tiret

TR est le bon outil.

tr " " "-"


virtue_signaling.pngpalestine.png
~1821942.svg

En ligne

#4 02-12-2019 10:27:25

Anonyme
Invité

Re : [Résolu] enlever les espaces pour un tiret

otyugh a écrit :

TR est le bon outil.

tr " " "-"




01- 02- 03-



mais voilà, je voudrais ça

01-02-03



@fabi1

je n'arrive pas à exécuter cette commande smile

Dernière modification par Anonyme (02-12-2019 10:28:42)

#5 02-12-2019 10:49:21

David5647
Membre
Distrib. : Debian Sid
Noyau : 5.15.0-2-amd64
(G)UI : i3wm + des bouts de kde
Inscription : 27-08-2017

Re : [Résolu] enlever les espaces pour un tiret

les deux commandes citées devraient le faire parfaitement:

echo "01 02 03" | sed  's/ /-/g'


echo "01 02 03" | tr " " "-"


Quel est l'output exact de ta commande?

edit :
peut-être virer les espaces en fin de chaine si il y en a :

echo "1 2 3  " | sed -e 's/ *$//'

Dernière modification par David5647 (02-12-2019 10:53:37)

Hors ligne

#6 02-12-2019 10:52:04

Anonyme
Invité

Re : [Résolu] enlever les espaces pour un tiret

j'arrive à sortir le truc en deux temps hmm

01, 02, 03,



titles=$(lsdvd /dev/sr0 | awk '/Length:/  {print $2}' | tr -d ',')



01 02 03



echo $titles | sed 's/[[:space:]]/-/g'



01-02-03

Dernière modification par Anonyme (02-12-2019 10:53:21)

#7 02-12-2019 10:52:52

Anonyme
Invité

Re : [Résolu] enlever les espaces pour un tiret

@David5647

bonjour

messages croisés

Dernière modification par Anonyme (02-12-2019 10:54:49)

#8 02-12-2019 10:56:50

David5647
Membre
Distrib. : Debian Sid
Noyau : 5.15.0-2-amd64
(G)UI : i3wm + des bouts de kde
Inscription : 27-08-2017

Re : [Résolu] enlever les espaces pour un tiret

echo "01, 02, 03, " | sed -e 's/[ ,]*$//' -e 's/, /-/g'
 

Hors ligne

#9 02-12-2019 11:09:32

Anonyme
Invité

Re : [Résolu] enlever les espaces pour un tiret

David5647 a écrit :

echo "01, 02, 03, " | sed -e 's/[ ,]*$//' -e 's/, /-/g'
 



@David5647

ça fonctionne smile

titles=$(lsdvd /dev/sr0 | awk '/Length:/  {print $2}')


01, 02, 03,



echo $titles | sed -e 's/[ ,]*$//' -e 's/, /-/g'


01-02-03


pour une commande désirée :

mplayer ...... -dvd-device /dev/sr0 dvdnav://01-02-03




Merci à vous tous.

Pied de page des forums