Goto IF

Résolu/Fermé
techinfo46 Messages postés 383 Date d'inscription jeudi 23 décembre 2010 Statut Membre Dernière intervention 20 avril 2020 - 11 déc. 2013 à 18:08
techinfo46 Messages postés 383 Date d'inscription jeudi 23 décembre 2010 Statut Membre Dernière intervention 20 avril 2020 - 12 déc. 2013 à 18:40
Bonjour, voici mon script qui ne fonctionne pas.

=====debut script================

echo on

SET A=%date:~-4%

if "%A%" EQU "2014" GOTO :2014
if "%A%" EQU "2013" GOTO :2013

:2014
xcopy master_preferences 'C:\Program Files\Google\Chrome' /Y
xcopy Preferences 'C:\Documents and Settings\utilisateur\Local Settings\Application Data\Google\Chrome\User Data\Default\' /Y
mkdir c:\"testok"
schtasks /Delete /TN "Chrome" /F
if exist "c:\testok" rmdir c:\testok
goto end


:2013
goto end
exit


====== fin de script========

si je suis en 2013 cela m'exécute aussi mon goto 2014, je ne comprend vraiment pas.
Merci de votre aide



3 réponses

Froulik Messages postés 3779 Date d'inscription lundi 11 novembre 2013 Statut Membre Dernière intervention 15 avril 2014 943
11 déc. 2013 à 18:20
Trouvé :o)

je l'ai exécuté en remplaçant tes routines par 'echo 2013' ou 'echo 2014'
et voici la copie de mon cmd :
http://img593.imageshack.us/img593/4740/l43u.jpg
il y a un espace ici :
if "%A%" EQU "2014" GOTO :2014
donne
if "2013 " EQU "2013" => faux donc il continue...

maintenant, d'où sort cet espace ?
Au plus simple, pour que ça fonctionne tu n'as qu'à ajouter EQU "2013 " et ...EQU "2014 "
0
MrYAU31 Messages postés 3808 Date d'inscription samedi 23 février 2013 Statut Membre Dernière intervention 8 juillet 2017 1 611
11 déc. 2013 à 18:21
Bonjour,
Tu as une variable A mais tu ne l'utilises pas dans ton IF à cause des "
Essaye avec :
if %A% EQU 2014 GOTO :2014
if %A% EQU 2013 GOTO :2013
0
Froulik Messages postés 3779 Date d'inscription lundi 11 novembre 2013 Statut Membre Dernière intervention 15 avril 2014 943
11 déc. 2013 à 18:25
@ MrYAU31 : oulala maizoui mais c'est bien sûr.
Mais ça n'explique pourtant pas qu'on ait un espace après l'année... :o/
0
MrYAU31 Messages postés 3808 Date d'inscription samedi 23 février 2013 Statut Membre Dernière intervention 8 juillet 2017 1 611
11 déc. 2013 à 18:29
Chez moi, je n'ai pas d'espace si je fais un echo %A%. J'ai juste 2013.
Et un
if %A% EQU 2013 echo OK
me renvoit bien OK.
0
Froulik Messages postés 3779 Date d'inscription lundi 11 novembre 2013 Statut Membre Dernière intervention 15 avril 2014 943
11 déc. 2013 à 18:34
oui oui moi aussi MrYAU31
.et j'ai trouvé d'où vient l'espace :
j'ai copié collé son script et je me suis retrouvé avec un espace supplémentaire en fin de chaque ligne. cqfd
j'ai provoqué une erreur, au lieu de donner la solution... je vais aller faire pénitence tiens...
0
techinfo46 Messages postés 383 Date d'inscription jeudi 23 décembre 2010 Statut Membre Dernière intervention 20 avril 2020 55
12 déc. 2013 à 18:40
Merci effectivement en enlevant les guillemets cela fonctionne
0