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

Scripts/Batch Discussion :

Caractères spéciaux (©) dans le chemin des fichiers lors d'un script copy [Batch]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    366
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 366
    Par défaut Caractères spéciaux (©) dans le chemin des fichiers lors d'un script copy
    Bonjour à tous,

    N'étant pas du tout programmeur, je me risque à l'écriture d'un script batch pour copier des fichiers (photos) d'un dossier A, vers un dossier B, en les renommant à l'occasion (je créé mon script depuis une table excel avec des formules).
    Globalement, voici ce que ça donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    copy "C:\DOSSIER A\photo truc-muche.jpg" "C:\DOSSIER B\photo_01.jpg"
    copy "C:\DOSSIER A\photo machin.jpg" "C:\DOSSIER B\photo_02.jpg"
    ...
    ... (plusieurs centaines de photos)
    Globalement, ça fonctionne bien , sauf que (il y a toujours un "mais" ) certaines photos comportent des caractères spéciaux, et en particulier le copyright (©), qui induit une erreur (pas de copie).
    Si possible, j'aimerais ne pas avoir à renommer les fichiers source : même si je pourrais peut-être le faire avec un script de renommage, ces photos sont indexées dans différentes bases de données et il faudrait alors toutes les mettre à jour...
    Pourriez-vous donc me dire comment écrire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    copy "C:\DOSSIER A\photo truc-muche © machin.jpg" "C:\DOSSIER B\photo_01.jpg"
    Merci pour votre aide !

    Sylvain M.

  2. #2
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    salut,

    remplace le © par ¸
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @echo off&cls
    copy "C:\DOSSIER A\photo truc-muche ¸ machin.jpg" "C:\DOSSIER B\photo_01.jpg"
    Maintenant, dois-tu vraiment definir le nom de chaque image dans ton script batch ?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    366
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 366
    Par défaut
    Merci pour cette réponse.

    Malheureusement, ça ne fonctionne pas encore chez moi, et je soupçonne d'autres caractères spéciaux de poser problèmes...
    D'abord, pour répondre à ta question : "dois-tu vraiment definir le nom de chaque image dans ton script batch ? "
    Oui, car j'ai des centaines de photos avec des noms "à la noix", bourrés de caractères spéciaux (copyright entre autre), mais qui sont indexés dans une base de données. Grace à celle ci et quelques formules, j'ai créé des noms "propres" et uniques pour chaque photo. Une table de correspondance. Quand je lance mon script sur ces centaines de photos, ça marche pour la moitié environ, mais pas pour l'autre moitié (notamment toutes celles avec copyright).

    Je fais un test sur un seul fichier, actuellement, et je n'y parviens pas. Voici le chemin complet (juste allégé pour l'exemple) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Y:\MEDIATHEQUE\PHOTOTHEQUE\ARCHIVES PHOTOS\AGRICULTURE\Activités_agricoles\Filière_cidricole\Variétés\1988_3bis-2.1.2.6-65  ©TRUC.jpg
    Quand je lance le script, en mettant une pause derrière, voici ce qui s'affiche à la fenêtre CMD :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    C:\Temp>copy "Y:\MEDIATHEQUE\PHOTOTHEQUE\ARCHIVES PHOTOS\AGRICULTURE\Activit├®s_agricoles\Fili├¿re_cidricole\Vari├®t├®s\1988_3bis-2.1.2.6-65  ┬©TRUC.jpg" "C:\Temp\PHOTOS\NOMPHOTO.jpg"
    Le chemin d'accès spécifié est introuvable.
    (que je remplace le "©" par "¸" ou pas, il affiche "┬©" dans la fenêtre)

    Mon .BAT est enregistré en UTF8...

    Y a-t-il d'autres caractères dans ce chemin exemple qu'il faut remplacer, et par quoi ?

    Merci encore !

    Sylvain M.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    366
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 366
    Par défaut
    Je poursuis mes tests, et en fait ce n'est peut-être pas d'autres caractères qui pausent problèmes, mais uniquement le "©", même remplacé par "¸" qui fait planter...
    Voici en PJ un exemple (à enregistrer dans "C:\TEST" qui ne fonctionne pas) :
    TEST.zip

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    @echo off&cls
    copy "C:\TEST\ORIGINE\FICHIER1.txt" "C:\TEST\DESTINATION\FICHIER_A.txt"
    copy "C:\TEST\ORIGINE\FICHIER2.txt" "C:\TEST\DESTINATION\FICHIER_B.txt"
    copy "C:\TEST\ORIGINE\FICHIER3 avec espaces et ¸.txt" "C:\TEST\DESTINATION\FICHIER_C.txt"
    copy "C:\TEST\ORIGINE\FICHIER4.txt" "C:\TEST\DESTINATION\FICHIER_D.txt"
    copy "C:\TEST\ORIGINE\FICHIER5.txt" "C:\TEST\DESTINATION\FICHIER_E.txt"
    pause
    Le 3e fichier n'est pas copié... et j'ai le message :
    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
    16
    17
    18
    19
    20
    21
    22
    23
    C:\TEST>copy "C:\TEST\ORIGINE\FICHIER1.txt" "C:\TEST\DESTINATION\FICHIER_A.txt"
    
            1 fichier(s) copié(s).
    
    C:\TEST>copy "C:\TEST\ORIGINE\FICHIER2.txt" "C:\TEST\DESTINATION\FICHIER_B.txt"
    
            1 fichier(s) copié(s).
    
    C:\TEST>copy "C:\TEST\ORIGINE\FICHIER3 avec espaces et ┬©.txt" "C:\TEST\DESTINAT
    ION\FICHIER_C.txt"
    Le fichier spécifié est introuvable.
    
    C:\TEST>copy "C:\TEST\ORIGINE\FICHIER4.txt" "C:\TEST\DESTINATION\FICHIER_D.txt"
    
            1 fichier(s) copié(s).
    
    C:\TEST>copy "C:\TEST\ORIGINE\FICHIER5.txt" "C:\TEST\DESTINATION\FICHIER_E.txt"
    
            1 fichier(s) copié(s).
    
    C:\TEST>pause
    Appuyez sur une touche pour continuer...
    Si ça peut faire avancer le schmillblick...

    Sylvain M.

  5. #5
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    Salut,

    Sauve ton script.bat en ANSI et ça devrait marcher ....


  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    366
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 366
    Par défaut
    Je viens de tester, et ça ne fonctionne pas non plus...

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

Discussions similaires

  1. Caractères spéciaux dans un chemin
    Par debhians dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 25/05/2010, 21h47
  2. [File & Zip] Caractères spéciaux dans les noms de fichiers
    Par Marvelll dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 12/02/2010, 17h50
  3. Caractère spéciaux dans un nom de fichier
    Par eddie5150 dans le forum Java ME
    Réponses: 6
    Dernier message: 26/06/2008, 14h52
  4. Caractères spéciaux dans le nom des tables
    Par xx_FiFty_xx dans le forum Requêtes
    Réponses: 4
    Dernier message: 25/06/2008, 12h30
  5. Caractères transformés dans les chemins de fichier
    Par canabral dans le forum Langage
    Réponses: 4
    Dernier message: 15/12/2005, 15h24

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