Bonjour,
Je suis sur une Debian Stretch, mon SHell est : /bin/bash
et je suis sous KDE depuis Konsole
Je crée 2 fichiers :
touch fichier\ 1-1.txt
touch fichier\ 2-2.txt
J’ai mes 2 fichiers dans un répertoire QUE je souhaite modifier (supprimer les espaces) et cela sans fichier (en ligne de commande) :
18:02:07 root@orj:~ $ ls -l .
total 3
-rw-r--r-- 1 root root 0 févr. 2 17:52 fichier 1-1.txt
-rw-r--r-- 1 root root 0 févr. 2 17:52 fichier 2-2.txt
j’essaie de faire simplement pour tester la commande sed
:
find . -type f -name "*.txt" -exec sed -r 's/ /_/g' {} +
Cela ne me ressort rien !
Si j’envoie cela (tout va bien) :
18:11:08 root@orj:~ $ find . -type f -name "*.txt" -exec ls -l {} +
-rw-r--r-- 1 root root 0 févr. 2 17:52 ./fichier 1-1.txt
-rw-r--r-- 1 root root 0 févr. 2 18:08 ./fichier 2-2.txt
Au final ce serait quelque chose comme cela (avec un boucle depuis la console) :
for i in "*.txt"; do mv $i `sed -r -n 's/ /_/g' $i`; done;
NdM : Avant sed et après $i (avant le done) il un apostrophe à l’envers.
Mais je n’y arrive pas. Qui peut m’aider ^^
En vous remerciant.
Cordialement,
Romain