Incrementation de variable DOS

Fermé
Boboss51 - 28 août 2003 à 11:16
 Maze - 31 août 2012 à 16:09
Salut,

Comment faire pour faire une tempo dans un Batch
j'ai essayer de faire une boucle avec incrementation de variable, la définition de la varible fonctionne mais l'incrementation ne fonctionne pas.
Voila mon batch :

SET tempo = 0
:debut
if tempo==10000 goto fin
%tempo%==%tempo%++1
goto debut
:fin

j'ai essayé avec ou sans % avec %%, y'a rien qui marche, ni avec les = et + non doublés

Merci

5 réponses

Pour que le script puisse prendre en compte la nouvelle valeur de la variable il faut faire appel à l'expansion retardée et au lieu d'apeller la variable par %compteur%, il faut l'apeller par !compteur!
par exemple :
setlocal enabledelayedexpansion
set compteur=1
for %%f in (*) do (
set /A compteur+=1
set compteur
echo compteur : !compteur!
)
endlocal

Pour plus de renseignement, consulter :
www.microsoft.com

dans une fenêtre de commande : set /?
9
Merci d'avoir mis du temps pour la communauté. Bon courage Ami.
0
En console dos sous windows 2000, pour faire une incrementation de variable , il faut utiliser le parametre /A, sans quoi, il prends l'opération pour une chaine de caractere :

set test=1
set /A test=%test%+1
set test

tu peux vérifier les options de set avec

set /?
4
Salut

ouai suis un peu en retard mais sa peut toujours servir que quelqu'un poste la solution au problème original !

désolé de dire sa mais ton code est plein de petites fautes qui font que sa ne risque pas de marcher !

voila en reprenant ton exemple le code qui marche !

@echo off
color a

set tempo=0
:debut
if %tempo% == 10000 goto fin
set /a tempo=%tempo%+1
goto debut
:fin

echo sa marche ! =)
pause>nul

Et voila pour tout ceux a qui sa pourrai servir !

PS ----> le sujet était la temporisation en batch alors pour ceux qui veulent ...

@echo off
color a

ping localhost -n 10>nul

echo sa marche ! =)
pause>nul

!!! OU 10 EST (environ) LE NOMBRE DE SECONDE DE TEMPORISATION !

Thanks !
4
slt sais tu comment je peu bloquer le compteur totale de pieces
2

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 894
28 août 2003 à 11:30
Salut.

Je suis pas trop sur, mais je crois qu'il te faut utiliser la commande "shift".

Fais un tour sur: http://www.namani.net/
Il y a des explications sur les commandes DOS, et sur les batchs.

JP
0