2010-02-02 5 views
0

Je souhaite attribuer la valeur alphanumérique à une variable dans le script Batch. J'ai essayé d'en suivre un mais j'ai eu une erreur.Affectation d'une valeur alphanumérique à une variable du lot

setlocal 
set test = \765514e2aad02ca658cc56cdb7884947 *E:\\test1 
echo %test% 
endlocal 

Error: 
C:\Users\bgannu>setlocal 

C:\Users\bgannu>set test = \765514e2aad02ca658cc56cdb7884947 *E:\\test1 

C:\Users\bgannu>echo 0 
0 

C:\Users\bgannu>endlocal 

Répondre

0

Perdre le/A. le/A est utilisé pour l'arithmétique.

C:\test>set var=\765514e2aad02ca658cc56cdb7884947 *E:\\test1 

C:\test>echo %var% 
\765514e2aad02ca658cc56cdb7884947 *E:\\test1 
+0

même après avoir enlevé/A ne fonctionnait pas non plus – Bharath

2

La syntaxe de jeu est set [[/a [expression]] [/p [variable=]] string] Le = doit être directement après votre variable de sorte que vous devez changer:

set test = \765514e2aad02ca658cc56cdb7884947 *E:\\test1 

à:

set test=\765514e2aad02ca658cc56cdb7884947 *E:\\test1 

Sinon, votre nom de variable serait avoir un espace à la fin. Vous pouvez facilement essayer ceci:

> set bar = foo 
> echo %bar% 
%bar% 
> echo %bar % 
foo 

Notez que les deux le nom de variable et son contenu ont un espace.

+0

+1 pour le bon problème; J'ai pris la liberté de rendre le problème réel un peu plus clair. – Joey

Questions connexes