Script Bash, prendre en considération l'espace dans les noms de fichier
Le
Tahar BEN ACHOUR

Bonjour à tous,
J'ai un petit soucis avec un petit script j'ai un do=
ssier dans lequel je voudrais extraire tous les fichiers qui s'y trouven=
t, mon script est le suivant for myfile in $(ls) do rar e $m=
yfile done le problème c'est que tous les fichiers sont nommés a=
vec des espaces comme séparateur et le script considère chaque mot c=
omme fichier à part ! Comment faire pour prendre en considération l'=
espace dans le nom de fichier ? Merci pour votre aide par exempl=
e si j'ai un fichier nommé "mon fichier.rar" en remplaçant rar e $my=
file par echo $myfile j'ai le réslutat suivant mon fichier un=
e idée, pour éviter ce souci ? Merci
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/935529.41665.qm@web26307.mail.ukl.yahoo.com
ssier dans lequel je voudrais extraire tous les fichiers qui s'y trouven=
t, mon script est le suivant for myfile in $(ls) do rar e $m=
yfile done le problème c'est que tous les fichiers sont nommés a=
vec des espaces comme séparateur et le script considère chaque mot c=
omme fichier à part ! Comment faire pour prendre en considération l'=
espace dans le nom de fichier ? Merci pour votre aide par exempl=
e si j'ai un fichier nommé "mon fichier.rar" en remplaçant rar e $my=
file par echo $myfile j'ai le réslutat suivant mon fichier un=
e idée, pour éviter ce souci ? Merci
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/935529.41665.qm@web26307.mail.ukl.yahoo.com
Tahar BEN ACHOUR
bonjour,
pour ton souchi :
man detox
man rename
mode opératoire :
detox -u utf_8 *
rename 'y/A-Z/a-z/' *
autrement c'est pas rar mais unrar
slt
bernard
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Bonjour,
double quotes sur le nom de fichier :
"${myfile}"
/usr/bin/rar a A B.rar /etc/passwd
for myfile in *.rar; do /usr/bin/rar e "${myfile}"; done
A+
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
ne pas utiliser ls dans une boucle for,
car pour un fichier nommer 'my file', la boucle itérera sur 'my', puis sur 'file'.
la bonne méthode est :
for file in ./*
do echo "rar e "$file"" #pour voir, et si c'est correct : do rar e "$file"
done
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
for agit sur chacun des petits bouts, qui sont séparés par des espaces
(tu peux changer le séparateur, mais gare à toi...). il faut utiliser
autre chose.
ls | while read file; do
macommande "$file";
done
on peut aussi s'amuser avec find/xargs/...
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/