Creation fichier batch base sur excel

[Résolu/Fermé]
Signaler
Messages postés
3
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
30 avril 2008
-
 Woodba -
Bonjour,
on me demande de crée un fichier batch qui se base sur des données contenu dans fichier excel :

le classeur contient comme colonnes |poste , nom (dns) , ip ,et os (système d exploitation)|.

je dois exécuter des ping sur les adresses ip figurant dans le fichier excel et en afficher le résultat en plus des autres données du fichier excel en ce référant a l adresse ip concernée par le ping .

je sais pas par ou commencer j ai besoin d un coup de pouce
merci d avance

4 réponses

Messages postés
3
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
30 avril 2008
2
rebonjour,
je crois que c impossible de faire ce genre de batch alors j ai copier les données dans un fichier texte.
je dois toujours cree le batch mais en me basant sur les donnees du fichier texte,je du mal dans la declaration de variable.
si quelqu un pourrez m aider j en saurais très reconnaissant
merci d avance
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
3
Date d'inscription
lundi 28 avril 2008
Statut
Membre
Dernière intervention
30 avril 2008
2
<gras>j ai fais des petit recherche sur le net et j ai enfin resolu a resoudre mon probleme merci pour cette merveilleuse invention qui s appelle internet, alors voila :
comme j ai déjà cite il ete impossible de realiser un batch basé sur excel alors j ai copie les donnees dans un fichier texte
que j ai appele bigboss.txt les donnees y apparaissent comme suit :
pc1;bigboss.home.ma;192.168.1.10
pc2;bigboss1.home.ma;192.168.1.11
PC3;bigbossxp.home.ma;192.168.1.12

puis dans les batch j ecris
@echo off
FOR /F "tokens=1-3 delims=;" %%i IN (bigboss.txt) DO (set Ordi=%%k
set nom=%%i
echo - ping en cours %%i
call :ping %%k
)
:ping
ping %Ordi% -n 1
IF %ERRORLEVEL%==1 echo %nom% est nonok>>DISCONNECTED.txt
IF %ERRORLEVEL%==0 echo %nom% est ok>>CONNECTED.txt
j explique:
pour la ligne 1
for(pour en anglais) /f(boucle qui permet d entrer dans le fichier texte tout en selectionnant les parametres qui le constitu)
tokens (pour declarer le nombre de variable a utiliser a partir du fichier texte)
delimis (precise le caractere present entre les parametre du fichier texte)
%%i (le premier parametre du fichier texte qui designe le nom de poste (pc1.pc1;pc3))
in (bat.txt) ca ve dire chercher dans le fichier (bat.txt)
do (faire)
(set ordi=%%k mettre le parametre %%k(qui est l adresse ip) dans une variable (ordi)

set nom=%%i mettre le parametre %%i(qui le nom de poste) dans une variable (nom)
echo -ping en cours %%i (afficher ping en cours nom du poste -ex ping en cours pc1)
call :ping %%k ( appeler la commande ping sur la adresse ip ))
ping %ordi% -n 1 p(ping sur chaque adresse ip une fois puisque -n indique le nombre de ping a faire)
IF %ERRORLEVEL%==0 echo %nom% est ok>>CONNECTED.txt
IF %ERRORLEVEL%==1 echo %nom% est NOK>>DISCONNECTED.txt
Si le resultat du ping est positive il envoie le resultat dans un fichier connected.txt
Si le resultat du ping est negative il envoie le resultat dans un fichier non disconnected.txt
je l ai essayé et ça marche nickel parfait good perfect
j espere que ca va aider quelque un
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Super Big_Boss,

T es le meilleur, merci beaucoup!
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

merci beaucoup ;)
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci