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 26-11-2016 17:45:23

Anonyme
Invité

[Résolu]Insérer un tiret avec sed

Bonjour,

j'ai plein de fichiers écrit de cette façon


06 Medley blabla.mp3
etc ...
 



Je voudrais sortir ça :


06 - Medley blabla.mp3
 



mettre un tiret  avec un espace avant et après celui-ci  smile

Merci par avance. cool

Dernière modification par Anonyme (27-11-2016 20:21:32)

#2 27-11-2016 00:28:34

sogal
Black Metal Modo
Lieu : Nord Isère
Distrib. : openSUSE Leap 42.3
Noyau : Linux 4.4.76
(G)UI : GNOME
Inscription : 09-05-2013
Site Web

Re : [Résolu]Insérer un tiret avec sed

Salut, essayes

sed -i 's/\ /\ -\ /1/'


Mais si tu veux renomer les fichiers eux mêmes, je te conseille Pyrenamer.


1485418338.png Hello IT ! Have you tried turning it off and on again ?

Hors ligne

#3 27-11-2016 09:17:43

Severian
Membre
Distrib. : Debian GNU/Linux 9.4 (stretch)
Noyau : Linux 4.14.0-0.bpo.3-amd64
(G)UI : Openbox 3.6.1-4
Inscription : 13-12-2014

Re : [Résolu]Insérer un tiret avec sed

bonsoir

ça ne serait pas plutôt

sed -i 's/\ /\ -\ /1'



edit
code complet

for i in *.mp3 ; do ii=`echo $i | sed 's/\ /\ -\ /1'`; mv "$i" "$ii"; done


(source : https://buzut.fr/la-commande-sed-pour-les-nazes/ )

Dernière modification par Severian (27-11-2016 09:29:46)

Hors ligne

#4 27-11-2016 10:48:22

Anonyme
Invité

Re : [Résolu]Insérer un tiret avec sed

Bonjour,

Merci à vous deux smile

Severian a écrit :

bonsoir
ça ne serait pas plutôt

sed -i 's/\ /\ -\ /1'



La commande fonctionne. smile
Ce qui me chagrine maintenant, c'est que si je rajoute des fichiers mp3 plus tard dans le dossier et que  je relance le script sur une sélection global, ceux qui ont déjà le bon nommage :

01 - blabla.mp3



vont devenir :

01 - - blabla.mp3



Il faudrait qu'il fasse l'impasse sur cux déjà bien nommés smile

Dernière modification par Anonyme (27-11-2016 10:51:25)

#5 27-11-2016 20:21:06

Anonyme
Invité

Re : [Résolu]Insérer un tiret avec sed

Résolu par :

la position :


sed  -e 's/.//3'  -e 's// - /3'
 

Pied de page des forums