Modifier nom fichier

Fermé
hssissen Messages postés 844 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 9 janvier 2017 - 25 févr. 2010 à 17:38
hssissen Messages postés 844 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 9 janvier 2017 - 25 févr. 2010 à 22:16
Bonjour,

Est-ce possible de me donner un script pour remplacer les espaces blancs contenus dans les noms de fichiers dans un repertoire par le caractere "sous lignes", i.e par un "_".

Merci de votre aide.
A voir également:

1 réponse

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
25 févr. 2010 à 17:45
Salut,
$ touch 'a b.txt'
$ ls -l a*.txt
-rw-r--r-- 1 lami20j lami20j 0 févr. 25 17:44 a b.txt
$ for f in $(ls *.txt|tr " " _);do mv -v "${f/_/ }" $f;done
`a b.txt' -> `a_b.txt'
$ ls -l a*.txt
-rw-r--r-- 1 lami20j lami20j 0 févr. 25 17:44 a_b.txt

0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
25 févr. 2010 à 18:20
Salut,

for f in $(ls *.txt|tr " " _);do mv -v "${f/_/ }" $f;done
T'as pas plus simple ?

for f in *.txt;do mv -v "$f" "${f// /_}";done


Non ?
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569 > jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020
25 févr. 2010 à 18:23
Re,

Oui.
J'avais la tête à autre chose quand j'ai tapé la commande ;-)
Sinon plus simple c'est avec rename je pense ;-)
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897 > lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019
25 févr. 2010 à 18:25
Par plus simple j'entendais surtout le fait de ne pas transformer les espaces en underscores, pour les remettre en espace avant de les transformer en underscores ;-))
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569 > jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020
25 févr. 2010 à 18:27
Re,

C'est puisque j'ai utilisé ls par rapport à toi qui a utilisé la globalisation de shell
0
hssissen Messages postés 844 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 9 janvier 2017 50 > jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020
25 févr. 2010 à 22:16
En fait le probleme est plus compliqué, pour moi en tout cas, c'est que j'ai des repertoires et sous repertoires, dont les noms peuvent avoir des espaces blancs, comment alors changer ces espaces comme indiqué par l'execution d'un script.

Merci encore une fois.
0