Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Variable avec un signe = sous W98

25 réponses
Avatar
Frédéric Breassier - News
Bonjour à tous.

J'ai besoin de vos lumières pour une connerie très simple :
J'ai un batch dans lequel je défini des variables qui contiennent un signe =
Du genre :
set URL=www.site.com/index.php?user=toto

Pas de soucis sous Windows XP, il la prend bien, par contre sous 98, je me
retouve avec une erreur de Syntax.
J'ai bien essayé de mettre un ^ devant le =, mais rien n'y fait, le shell
continu de l'interpréter.

Pouvez vous me dire comment je pourrais outrepasser ce problème ?

Merci.
--

Bonne journée.

Frederic Breassier

10 réponses

1 2 3
Avatar
Méta-MCI
Bonsoir !

Je suis désolé, mais je ne peux résister à la réponse suivante :



comment je pourrais outrepasser ce problème ?




En passant à Windows-XP ?


@+

Michel Claveau



Avatar
Frédéric Breassier - News
Bonjour,

mdr, oui, j'avais effectivement pensé à ça aussi, mais comme je suis une
gros fenéant, je préfère créer un script compatible WXP et W98 plutot que de
réinstaller les quelques 100 postes sous 98 qui nous restent ;-)
... Sans compter sur le fait que je ne pense pas que mon patron soit
d'accord pour racheter 100 nouveaux pc....

Bon, plus sérieusement, personne n'aurait une p'tite idée de génie ;-)

Bonne journée.

Frederic Breassier



"Méta-MCI" a écrit dans le message de
news:
Bonsoir !

Je suis désolé, mais je ne peux résister à la réponse suivante :



comment je pourrais outrepasser ce problème ?




En passant à Windows-XP ?


@+

Michel Claveau










Avatar
Gilles MOUGNOZ
Bonjour à tous.
J'ai besoin de vos lumières pour une connerie très simple :
J'ai un batch dans lequel je défini des variables qui contiennent un signe
Du genre :
set URL=www.site.com/index.php?user=toto

Pas de soucis sous Windows XP, il la prend bien, par contre sous 98, je
me retouve avec une erreur de Syntax.
J'ai bien essayé de mettre un ^ devant le =, mais rien n'y fait, le shell
continu de l'interpréter.
Pouvez vous me dire comment je pourrais outrepasser ce problème ?
Merci.
--
Bonne journée.
Frederic Breassier


Bonjour, Frédéric

Je vais peut-être dire une grosse bêtise mais n'est-il pas possible
d'entourer la chaîne avec des guillemets ?

set URL= " www.site.com/index.php?user=toto "

A moins de transformer le = par son code hexa...
Pour ce qui est de la solution de M.CLAVEAU, c'est parfaitement ridicule !
Attend carrément Vista... ;-)

Bonne continuation


Avatar
Frédéric Breassier - News
Bonjour à vous,

je viens d'essayer, mais les " sont prise dans la variable elle même, et la
commande set plante toujours quand elle vois le = :(

Pour le code ascii, j'y ai bien pensé, mais je ne vois pas comment intégrer
des codes ascii dans les bat.

Pour M.CLAVEAU, je ne veux surtouut pas déclencher de guerre ouverte sur ce
ng ;)
Mais d'un côté il n'a pas tord, un parc hétérogène m'aurait simplifé la vie
.... ;)

Enfin, on ne fait pas que ce qu'on veux, le chef demande, le technicien met
en place :p

--

Bonne journée.

Frederic Breassier
"Gilles MOUGNOZ" a écrit dans le message de news:

Bonjour à tous.
J'ai besoin de vos lumières pour une connerie très simple :
J'ai un batch dans lequel je défini des variables qui contiennent un
signe >> Du genre :
set URL=www.site.com/index.php?user=toto
Pas de soucis sous Windows XP, il la prend bien, par contre sous 98, je
me retouve avec une erreur de Syntax.
J'ai bien essayé de mettre un ^ devant le =, mais rien n'y fait, le shell
continu de l'interpréter.
Pouvez vous me dire comment je pourrais outrepasser ce problème ?
Merci.
--
Bonne journée.
Frederic Breassier


Bonjour, Frédéric

Je vais peut-être dire une grosse bêtise mais n'est-il pas possible
d'entourer la chaîne avec des guillemets ?

set URL= " www.site.com/index.php?user=toto "

A moins de transformer le = par son code hexa...
Pour ce qui est de la solution de M.CLAVEAU, c'est parfaitement ridicule !
Attend carrément Vista... ;-)

Bonne continuation




Avatar
Gilles MOUGNOZ
Bonjour à vous,
je viens d'essayer, mais les " sont prise dans la variable elle même, et
la commande set plante toujours quand elle vois le = :(
Pour le code ascii, j'y ai bien pensé, mais je ne vois pas comment
intégrer des codes ascii dans les bat.
Pour M.CLAVEAU, je ne veux surtouut pas déclencher de guerre ouverte sur
ce ng ;)
Mais d'un côté il n'a pas tord, un parc hétérogène m'aurait simplifé la
vie .... ;)
Enfin, on ne fait pas que ce qu'on veux, le chef demande, le technicien
met en place :p
--
Bonne journée.
Frederic Breassier


Re-bonjour,

De quel type est ta variable URL ?
La solution est peut-être de passer par une variable texte intermédiaire que
tu affecterais à ta variable URL.
Concernant M.CLAVEAU, ma remarque était plus ironique que polémique ;-)
Et même si tu convaincs ton chef, ton PDG et SURTOUT le chef comptable de
migrer ton parc informatique, cela ne se fera pas en une fois et tu risques
de te retrouver avec du XP et du Vista, donc toujours hétérogène (même si
les incompatibilités seront probablement réduites).

Bonne continuation

Avatar
Georges
Bonjour,
Dans une Url on peut mettre le code ascii transformé en hexa et précédé de %
Cela donnera :
set URL=www.site.com/index.php?user%3Dtoto

Reste à vérifier que cela fonctionne...

Cordialement
Georges


"Frédéric Breassier - News" a
écrit dans le message de news:
Bonjour à vous,

je viens d'essayer, mais les " sont prise dans la variable elle même, et
la commande set plante toujours quand elle vois le = :(

Pour le code ascii, j'y ai bien pensé, mais je ne vois pas comment
intégrer des codes ascii dans les bat.

Pour M.CLAVEAU, je ne veux surtouut pas déclencher de guerre ouverte sur
ce ng ;)
Mais d'un côté il n'a pas tord, un parc hétérogène m'aurait simplifé la
vie .... ;)

Enfin, on ne fait pas que ce qu'on veux, le chef demande, le technicien
met en place :p

--

Bonne journée.

Frederic Breassier
"Gilles MOUGNOZ" a écrit dans le message de news:

Bonjour à tous.
J'ai besoin de vos lumières pour une connerie très simple :
J'ai un batch dans lequel je défini des variables qui contiennent un
signe >>> Du genre :
set URL=www.site.com/index.php?user=toto
Pas de soucis sous Windows XP, il la prend bien, par contre sous 98, je
me retouve avec une erreur de Syntax.
J'ai bien essayé de mettre un ^ devant le =, mais rien n'y fait, le
shell continu de l'interpréter.
Pouvez vous me dire comment je pourrais outrepasser ce problème ?
Merci.
--
Bonne journée.
Frederic Breassier


Bonjour, Frédéric

Je vais peut-être dire une grosse bêtise mais n'est-il pas possible
d'entourer la chaîne avec des guillemets ?

set URL= " www.site.com/index.php?user=toto "

A moins de transformer le = par son code hexa...
Pour ce qui est de la solution de M.CLAVEAU, c'est parfaitement ridicule
! Attend carrément Vista... ;-)

Bonne continuation








Avatar
Michel Claveau
Bonsoir !

le chef demande, le technicien met en place
Il te reste à devenir chef à la place du chef.




--
@-salutations

Michel Claveau



Avatar
Michel Claveau
Bonsoir !

Attention : pour les batch, les guillemets sont littéraux. Les chaines
et valeurs sont délimitées par le retour chariot (ou quelques
caractères clefs, comme le filtre (|) les redirections (<>) etc.

Pour le reste, je suis d'accord. Et, même, il faudrait attendre le SP-1
de Vista (avec WinFS).

En plus, ça laissera le temps de renouveler le parc (et le chef).

@+

MCI


--
@-salutations

Michel Claveau
Avatar
Michel Claveau
Bonsoir !

Ca ne marchera pas, car %3 sera pris comme le troisième paramètre du
batch.

@+

MCI

--
@-salutations

Michel Claveau
Avatar
Méta-MCI
Bonsoir !


Je n'ai plus de W98, et je ne vais pas chez un client qui en a, avant
plusieurs jours. Donc, je ne peux tester.


Néanmoins, pourrais-tu essayer ceci :

fichier ess8a.bat :
@echo off
call ess8b echo %URL%


fichier ess8b.bat :
set URL=%*



Lancer essa.bat, et voir si URL contient bien le caractère




@+

MCI
1 2 3