Batch: variable dans le nom d'une variable
Résolu
Nilocs
Messages postés
36
Statut
Membre
-
poparnassus Messages postés 462 Statut Membre -
poparnassus Messages postés 462 Statut Membre -
Bonjour,
j'essaie d'écrire un batch permettant d'envoyer des messages à plusieurs ordinateurs en même temps, quelque chose dans ce genre:
Je voudrais utiliser un système avec une variable dont le nom (ip...) est composé d'une autre variable (1, 2, 3, etc...), ce qui permet d'envoyer à n'importe quel nombre d'ordinateurs.
Le problème est que quand l'ordinateur lit %ip%numero%%, il ne comprend pas "afficher la valeur de %ip1%, ou %ip2%", mais prend "%ip%" séparément et affiche juste "numero%" (d'ailleurs je ne comprends pas pourquoi il n'affiche pas numero%%).
Si quelqu'un sait comment afficher la valeur de la variable, je le remercie d'avance.
j'essaie d'écrire un batch permettant d'envoyer des messages à plusieurs ordinateurs en même temps, quelque chose dans ce genre:
@echo off set /p nombre= Nombre d'ordinateurs ? set numero=0 :choix set /a numero=%numero%+1 set /p ip%numero%= Poste ? if %nombre% NEQ %numero% goto choix :boucle set /p message= Message ? set numero=0 :for if %nombre%==%numero% goto boucle set /a numero=%numero%+1 net send %ip%numero%% %message% goto for
Je voudrais utiliser un système avec une variable dont le nom (ip...) est composé d'une autre variable (1, 2, 3, etc...), ce qui permet d'envoyer à n'importe quel nombre d'ordinateurs.
Le problème est que quand l'ordinateur lit %ip%numero%%, il ne comprend pas "afficher la valeur de %ip1%, ou %ip2%", mais prend "%ip%" séparément et affiche juste "numero%" (d'ailleurs je ne comprends pas pourquoi il n'affiche pas numero%%).
Si quelqu'un sait comment afficher la valeur de la variable, je le remercie d'avance.
A voir également:
- Batch: variable dans le nom d'une variable
- Fichier batch - Guide
- Batch converter - Télécharger - Photo & Graphisme
- Batch renommer une partie du nom de plusieurs fichiers ✓ - Forum Autoit / batch
- Color batch - Forum Autoit / batch
- Renommer tous les fichiers d'un dossier - Forum Windows
1 réponse
hello
essayer ca
on boucle sur la liste des variables ipX et on récupère la valeur
j'ai ajouté un test, avec message==q on sort
essayer ca
on boucle sur la liste des variables ipX et on récupère la valeur
j'ai ajouté un test, avec message==q on sort
@echo off set /p nombre= Nombre d'ordinateurs ? set numero=0 :choix set /a numero=%numero%+1 set /p ip%numero%= Poste ? if %nombre% NEQ %numero% goto choix :boucle set /p message= Message ? if %message%==q exit /b for /f "tokens=2 delims==" %%a in ('set ip') do ( net send %%a %message% ) goto boucle
la variable IP%% ne s'incremente pas ...
set /p ip%numero%= Poste ?