IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Espace (très bizare) dans un nom unix


Sujet :

Shell et commandes GNU

  1. #1
    Membre régulier
    Inscrit en
    Décembre 2010
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 258
    Points : 77
    Points
    77
    Par défaut Espace (très bizare) dans un nom unix
    Bonjour à tous,

    J'ai un souci un peu particulier...
    J'ai créer un petit Batch qui récupère les jaquettes de mes films. Celui-ci va chercher le code du film dans un txt, et ensuite vérifie si l'image n'existe pas déjà avant de la télécharger.
    L'ennui c'est que pour certaines d'entre elles, ça ne fonctionne pas.
    Lorsque je fais un ls de l'image, l'extension de celle-ci apparait tout au début de ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .jpg3264   80 -rwxrwxrwx    1 admin    users        78221 Jul 31  2006 /volume1/web/films/affiches/8639
    L'image apparait comme si elle comprenait un espace bizarre mais dans l'ihm de mon serveur mais au moment de la renommer (même si je vois "8639 .jpg"), j'ai 8639.jpg.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    if [ ! -z "$AFFICHE" ]
    then
    	IMG=$REPXML'/affiches/'$CODE'.jpg'
    	CHE=`echo $AFFICHE | sed 's/<affiche>//g' | sed 's/<\/affiche>//g'`
    	if [ ! -f $IMG ]
    	then
    		wget -qO $IMG $CHE
    		chown admin:users $IMG
    		chmod 777 $IMG
    	fi
    	IMG=$CODE'.jpg'
    	AFFICHE=`echo '<affiche>'$IMG'</affiche>'`
    	echo -n -e "$AFFICHE\n" >> $TMP
    fi
    Et voici ce qu'il se passe :

    + [ ! -z <affiche>http://images.allocine.fr/medias/nmedia/18/62/93/12/18659746.jpg</affiche> ]
    .jpgG=/volume1/web/films/affiches/8639
    + sed s/<\/affiche>//g
    + sed s/<affiche>//g
    + echo <affiche>http://images.allocine.fr/medias/nmedia/18/62/93/12/18659746.jpg</affiche>
    + CHE=http://images.allocine.fr/medias/nmedia/18/62/93/12/18659746.jpg
    .jpg ]-f /volume1/web/films/affiches/8639
    .jpgG=8639
    .jpg</affiche>e>8639
    .jpg</affiche>iche>8639
    .jpg</affiche>\nfiche>8639
    Que se passe-t-il ? Merci

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 957
    Points : 4 386
    Points
    4 386
    Par défaut
    Citation Envoyé par lokomass Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .jpg3264   80 -rwxrwxrwx    1 admin    users        78221 Jul 31  2006 /volume1/web/films/affiches/8639
    redirigez la sortie de ce qui produit ce texte dans un fichier et faites un hexdump pour que l'on sache exactement quel est ce caractère "invisible" qui pose problème, mais au vu du résultat que vous montrez ici, il y a de fortes chances pour que ce soit un CR (CHAR(13)).

    la solution la plus simple sera de faire un pré-taitement qui renomme vos fichiers en nettoyant leur nom de tout caractère de ce genre (< CHAR(20)).

  3. #3
    Membre régulier
    Inscrit en
    Décembre 2010
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 258
    Points : 77
    Points
    77
    Par défaut
    A priori j'ai trouvé. En ouvrant notepad ++, j'ai fait afficher les caracteres de fin de ligne, certains sont en LF (unix) d'autre en (CR+LF) format windows, d'ou le soucis.
    C'est donc résolu ! merci !

  4. #4
    Invité
    Invité(e)
    Par défaut
    dos2unix te permet d'enlever le retour chariot windows automatiquement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [bat]espace dans le nom d'un fichier
    Par norac dans le forum Windows
    Réponses: 8
    Dernier message: 29/06/2006, 10h15
  2. Réponses: 6
    Dernier message: 03/05/2006, 11h01
  3. Smbclient et espace dans les noms
    Par jean-jacques varvenne dans le forum Réseau
    Réponses: 4
    Dernier message: 30/11/2005, 18h29
  4. download fichier avec espace dans le nom
    Par cb68 dans le forum Langage
    Réponses: 8
    Dernier message: 23/11/2005, 10h00
  5. Réponses: 4
    Dernier message: 29/10/2005, 18h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo