Forum des développeurs  

Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé.
Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Windows > Win XP

Win XP Forum d'entraide Windows XP. Avant de poster : La F.A.Q Windows XP

Réponse
 
Outils de la discussion
Vieux 07/07/2006, 14h42   #1 (permalink)
Nouveau membre du Club
 
Date d'inscription: mai 2006
Localisation: Amiens
Messages: 73
Par défaut BATCH DOS => Utilisation de variables ?

Bonjour,

Je voudrais effectuer une copie de fichier avec le ficheir suivant :
Code :
@echo off
cls
set source = "K:\xxx xx xxxxxx xx xx xxxxxxé xx xx xx xxxxxx xxxxxée\xéxxxxxxxxx xxxxxs\xxxx\xxxxxxxx\xxx\xxxx_xxxxxxx_xxxxx_xxxxxxxx.mdb"
set destination = "E:\xxxxxx\xxxxxxxxxxxxxxxxxxx\xxxxxxxxxxxxxxx\xxxx_xxxxxxx_xxxxx_xxxxxxxx.mdb"
copy /y %source% %destination%
Cependant, j'ai l'erreur suivante :
Citation:
La syntaxe de la commande est incorrecte.
Savez-vous pourquoi ?

Comment puis-je faire marcher ce *.cmd ?

Merci,
Mathieu
bds2006 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2006, 14h53   #2 (permalink)
Modérateur
 
Avatar de al1_24
 
Date d'inscription: mai 2002
Messages: 3 152
Par défaut

D'après mes vieux souvenirs, il ne faut pas mettre d'espaces autour du signe =
al1_24 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2006, 14h56   #3 (permalink)
Nouveau membre du Club
 
Date d'inscription: mai 2006
Localisation: Amiens
Messages: 73
Par défaut

Bonjour,

J'ai donc enlevé mes espaces, mais j'ai la même erreur.

Merci,
Mathieu
bds2006 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2006, 15h25   #4 (permalink)
Modérateur
 
Avatar de al1_24
 
Date d'inscription: mai 2002
Messages: 3 152
Par défaut

Enlève (ou mets en commentaire) le @echo off au début de ton batch pour voir comment les variables sont traitées, tu trouveras peut-être plus facilement l'origine de l'erreur
al1_24 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2006, 19h22   #5 (permalink)
Rédacteur/Modérateur
 
Avatar de Juju_41
 
Date d'inscription: février 2003
Localisation: Paris, Montpellier et Vendôme
Âge: 24
Messages: 976
Par défaut

Bizarre j'ai testé chez moi ceci :
Citation:
@echo off
set FICHIER1="fichier.txt"
set FICHIER2="fichier2.txt"
copy /y %FICHIER1% %FICHIER2%
... et ça fonctionne correctement
__________________
Avant de poster, merci de consulter les règles du forum
Juju_41 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2006, 19h52   #6 (permalink)
Modérateur
 
Avatar de Nemesys
 
Date d'inscription: mars 2006
Localisation: Bordeaux
Messages: 2 000
Par défaut

Ca correspond à quoi "cls" ? Tu ne ferais pas mieux de l'enlever ?
__________________
Modérateur Hardware, Systèmes et Logiciels

Merci de respecter les règles - Utilisez les MP uniquement pour me signaler un abus sur le forum
Nemesys est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 07/07/2006, 20h24   #7 (permalink)
Responsable Visual Basic
 
Avatar de bbil
 
Date d'inscription: juin 2003
Localisation: Toulouse-Mirepoix
Âge: 42
Messages: 7 739
Envoyer un message via Skype™ à bbil
Par défaut

cls c'est pour effacer l'écran... (c'est pas génant) ..

enléve l'espace après le nom de la variable et le % d'aprés dans la ligne copy

Code :
@echo off
cls
set source= "K:\xxx xx xxxxxx xx xx xxxxxxé xx xx xx xxxxxx xxxxxée\xéxxxxxxxxx xxxxxs\xxxx\xxxxxxxx\xxx\xxxx_xxxxxxx_xxxxx_xxxxxxxx.mdb"
set destination= "E:\xxxxxx\xxxxxxxxxxxxxxxxxxx\xxxxxxxxxxxxxxx\xxxx_xxxxxxx_xxxxx_xxxxxxxx.mdb"
Copy /y %source %destination
pause
__________________
bbil : Impératif "A LIRE AVANT DE POSTER"
bbil est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 11/07/2006, 02h46   #8 (permalink)
Nouveau membre du Club
 
Avatar de heinquoi
 
Date d'inscription: octobre 2003
Localisation: Orleans
Âge: 37
Messages: 54
Par défaut

salut,
dans ma doc batch, j'ai
Citation:
Pour lire le contenu d’une variable, on l’encadre de deux « % ». Ces deux signes
indiquent à l’interpréteur qu’il doit remplacer le nom de la variable par son contenu.
Si la variable n’existe pas, aucune erreur n’est affichée, mais la variable est
remplacée par une chaîne de caractères nulle.
consernant cls, je ne la crois pas en cause ( a moins d'etre un lendemain de coupe du moude et d'etre encore peté parce que y a que 3 lettres) mais bon tu peux la retiré.

je te propose 2 test:

*1* tu fait un batch avec une seul ligne: copy /y c:\config.sys c:\conf2.txt
*2* tu fait un batch avec une seul ligne : copy /y "ton\chemin\a\toi" "atoi\lechemin\"

A mon avis ca plante a ce niveau a cause ... des police de caractère et des accents.
as tu fait un copié collé pour le chemin des fichiers ?
il y a t-il des accents ou des espaces dans le nom des fichiers ?
heinquoi est déconnecté   Envoyer un message privé Réponse avec citation
NEWS WINDOWSF.A.Qs WINDOWSTUTORIELS WINDOWSFREEWARES WINDOWSLIVRES WINDOWS

Réponse

Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Windows > Win XP



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide