Script Bash, prendre en considération l'espace dans les noms de fichier
Bonjour à tous, J'ai un petit soucis avec un petit script j'ai un dossier dans lequel je voudrais extraire tous les fichiers qui s'y trouvent, mon script est le suivant for myfile in $(ls) do rar e $myfile done le problème c'est que tous les fichiers sont nommés avec des espaces comme séparateur et le script considère chaque mot comme fichier à part ! Comment faire pour prendre en considération l'espace dans le nom de fichier ? Merci pour votre aide par exemple si j'ai un fichier nommé mon fichier.rar en remplaçant rar e $myfile par echo $myfile j'ai le réslutat suivant mon fichier une 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-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/935529.41665...@web26307.mail.ukl.yahoo.com
Re: Script Bash, prendre en considération l'espace dans les noms de fichier
Le Sat, 4 Jun 2011 15:50:27 +0100 (BST), Tahar BEN ACHOUR tahar...@yahoo.fr a écrit : Bonjour à tous, J'ai un petit soucis avec un petit script j'ai un dossier dans lequel je voudrais extraire tous les fichiers qui s'y trouvent, mon script est le suivant for myfile in $(ls) do rar e $myfile done le problème c'est que tous les fichiers sont nommés avec des espaces comme séparateur et le script considère chaque mot comme fichier à part ! Comment faire pour prendre en considération l'espace dans le nom de fichier ? Merci pour votre aide par exemple si j'ai un fichier nommé mon fichier.rar en remplaçant rar e $myfile par echo $myfile j'ai le réslutat suivant mon fichier une idée, pour éviter ce souci ? Merci 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 debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110604170006.1aaa47bd.bernard.schoenac...@free.fr
Re: Script Bash, prendre en considération l'espace dans les noms de fichier
On 04/06/2011 16:50, Tahar BEN ACHOUR wrote: Bonjour à tous, J'ai un petit soucis avec un petit script j'ai un dossier dans lequel je voudrais extraire tous les fichiers qui s'y trouvent, mon script est le suivant for myfile in $(ls) do rar e $myfile done le problème c'est que tous les fichiers sont nommés avec des espaces comme séparateur et le script considère chaque mot comme fichier à part ! Comment faire pour prendre en considération l'espace dans le nom de fichier ? Merci pour votre aide par exemple si j'ai un fichier nommé mon fichier.rar en remplaçant rar e $myfile par echo $myfile j'ai le réslutat suivant mon fichier une idée, pour éviter ce souci ? Merci 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 debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4dea4dd0.9050...@shom.fr
Re: Script Bash, prendre en considération l'espace dans les noms de fichier
On sam. 04 juin.2011 à 15:50:27, Tahar BEN ACHOUR wrote: une idée, pour éviter ce souci ? 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 debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110604160247.ga3...@chorion.ath.cx
Re: Script Bash, prendre en considération l'espace dans les noms de fichier
Le 04/06/2011 16:50, Tahar BEN ACHOUR a écrit : Bonjour à tous, J'ai un petit soucis avec un petit script j'ai un dossier dans lequel je voudrais extraire tous les fichiers qui s'y trouvent, mon script est le suivant for myfile in $(ls) do rar e $myfile done le problème c'est que tous les fichiers sont nommés avec des espaces comme séparateur et le script considère chaque mot comme fichier à part ! Comment faire pour prendre en considération l'espace dans le nom de fichier ? 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/... Merci pour votre aide par exemple si j'ai un fichier nommé mon fichier.rar en remplaçant rar e $myfile par echo $myfile j'ai le réslutat suivant mon fichier une 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-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110604220501.cb11313a6...@liszt.debian.org