Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1166 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [BATCH]Recuperation informations fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[BATCH]Recuperation informations fichier

n°1289651
Splinter_7
Posté le 22-01-2006 à 20:15:41  profilanswer
 

Bonjour à tous. Je vous explique j'ai un fichier texte, j'aimerai récupérer une information (un chiffre par exemple) de ce fichier texte et l'attribuer à une variable dans mon prgramme batch. J'ai essayé FOR /F %%A in (kelkechose.txt) DO mais je ne vois pas comment recupérer l'information dans une variable par la suite.
Merci d'avance :)

mood
Publicité
Posté le 22-01-2006 à 20:15:41  profilanswer
 

n°1289654
couak
Posté le 22-01-2006 à 20:18:12  profilanswer
 

Code :
  1. for /f %%I in (fichier.txt) do set MAVARIABLE=%%i

n°1289661
wackevat
Posté le 22-01-2006 à 20:25:21  profilanswer
 

couak a écrit :

Code :
  1. for /f %%I in (fichier.txt) do set MAVARIABLE=%%i



P'tite précision : cette boucle récupère la dernière ligne de fichier.txt dans la variable MAVARIABLE. En fonction du format du fichier d'entrée, la commande peut varier un peu.

n°1289722
Splinter_7
Posté le 22-01-2006 à 21:34:14  profilanswer
 

merci sa fonctionne mais j'ai une autre question... :) avec mon fichier batch je lance la commande net send et j'aimerai que si l'ip de la machine n'existe pas sur le reseau, il envoi un message mais comment fait on pour gérer les erreurs??? :)

n°1289741
Splinter_7
Posté le 22-01-2006 à 22:14:06  profilanswer
 

                         /!\retour premiere question/!\  
Excusez moi mais lorsque je recupère l'information dans MAVARIABLE cela ne fonctionne pas si il y a un espace, par exemple "salut" il renvoi "salut" mais si on met "salut sa va ?" il renvoi "salut" :s comment faire pour qu'il prenne en compte toute la chaine?

n°1289745
wackevat
Posté le 22-01-2006 à 22:16:55  profilanswer
 

Fais  
for /?
pour plus d'infos + exemples.

n°1289747
Splinter_7
Posté le 22-01-2006 à 22:24:42  profilanswer
 

j'ai pas trouver ce que je veux mais tu n'aurai pas une idée ?

n°1289749
Splinter_7
Posté le 22-01-2006 à 22:29:45  profilanswer
 

c'est bon l'histoire des espace j'ai trouvé il fauut utiliser tokens et delims mais par contre pour la gestion des erreurs je trouve pa du tout :(

n°1289760
wackevat
Posté le 22-01-2006 à 22:44:36  profilanswer
 

Qu'entends-tu par gestion des erreurs ?

n°1289762
Splinter_7
Posté le 22-01-2006 à 22:52:35  profilanswer
 

par exemple j'execute la command net send si l'alias n'existe pas sur le reseau le message est envoyé a tous le reseau avec *

mood
Publicité
Posté le 22-01-2006 à 22:52:35  profilanswer
 

n°1289763
KangOl
Profil : pointeur
Posté le 22-01-2006 à 22:54:21  profilanswer
 

ERRORLEVEL :o

n°1290274
Splinter_7
Posté le 23-01-2006 à 16:53:22  profilanswer
 

Oui voila mais comment l'utiliser s'il te plait?

n°1290279
wackevat
Posté le 23-01-2006 à 16:57:37  profilanswer
 

if %ErrorLevel% == 0 fais_ceci else fais_cela

n°1290410
Splinter_7
Posté le 23-01-2006 à 18:52:13  profilanswer
 

d'accord je vais essayer merci nglechau ;)

n°1290423
Splinter_7
Posté le 23-01-2006 à 19:00:15  profilanswer
 

excuse moi dans mon cas: j'utilise la commande net send et cela me renvoi une erreur net send helpmsg 2273. Quelle condition utiliser avec ERRORLEVEL pour cette erreur?

n°1290425
wackevat
Posté le 23-01-2006 à 19:03:15  profilanswer
 

Tu évalues cette variable juste après avoir appelé net send.

n°1290481
Splinter_7
Posté le 23-01-2006 à 20:39:18  profilanswer
 

c'est a dire :  
 
if "%ip%" == "3" net send ***.***.*.* %mes%
if "%ERRORLEVEL%"!="0" GOTO blabla
 

n°1290483
Splinter_7
Posté le 23-01-2006 à 20:39:51  profilanswer
 

en fait la je veux que si l'alias n'est pas sur le reseau il l'envoi a tous le reseau

n°1290490
wackevat
Posté le 23-01-2006 à 21:02:44  profilanswer
 

%ErrorLevel% est une variable système et un entier, pas besoin de le quoter.
 
L'opérateur de comparaison != n'existe pas.
 
Fais de différents tests pour connaître la valeur ErrorLevel retournée dans chaque cas.

n°1290501
Splinter_7
Posté le 23-01-2006 à 21:11:34  profilanswer
 

merci pour tes precisions ;)

n°1290510
Splinter_7
Posté le 23-01-2006 à 21:23:31  profilanswer
 

comment faire pour faire le signe different alors

n°1290513
KangOl
Profil : pointeur
Posté le 23-01-2006 à 21:28:46  profilanswer
 

if not %ERRORLEVEL% 1 do GOTO foo

n°1290515
wackevat
Posté le 23-01-2006 à 21:30:17  profilanswer
 

Il te manque un == KangOl ;)
 
Sinon, pour la liste complète des opérateurs :
if /?

n°1290516
Splinter_7
Posté le 23-01-2006 à 21:32:35  profilanswer
 

il me reste beaucoup à apprendre lol
merci a vous

n°1290517
Splinter_7
Posté le 23-01-2006 à 21:33:05  profilanswer
 

sans indiscretion vous faite koi comme etude? ou comme travail?

n°1290532
wackevat
Posté le 23-01-2006 à 22:27:05  profilanswer
 

Etudes en info pour moi, mais de toute façon, Windows et les batchs ne sont pas enseignés à l'école ;)
 
Sinon, je ne pense pas que les modos soient ravis de nos mylife.com ;)

n°1290542
Splinter_7
Posté le 23-01-2006 à 22:36:36  profilanswer
 

si moi j'ai decouvert les batch à l'école cette année en bts ig ! ^^

n°1290557
wackevat
Posté le 23-01-2006 à 22:54:48  profilanswer
 

Ah OK. On ne fait pas les mêmes études ;)
 
Si tu as des soucis, n'hésite pas de revenir et surtout n'oublie pas que  l'aide de Windows contient beaucoup d'infos sur les syntaxes + exemples.
 
Un bon site sur le sujet :
www.robvanderwoude.com

n°1291338
Splinter_7
Posté le 24-01-2006 à 20:13:53  profilanswer
 

ok c'est noté merci ;)

n°1291341
Splinter_7
Posté le 24-01-2006 à 20:14:31  profilanswer
 

sino sans indiscretion c'est quoi comme type d'etude en info?

n°1291441
wackevat
Posté le 24-01-2006 à 21:52:05  profilanswer
 

Etudes universitaires, rien de plus classique ;)

n°1292159
Splinter_7
Posté le 25-01-2006 à 18:16:24  profilanswer
 

ha ok sinon j'ai une autre question tu ne serai pas comment redemarrer le service d'envoie des fichiers a l'aide d'un fichier batch ??  :/

n°1292239
Splinter_7
Posté le 25-01-2006 à 20:38:54  profilanswer
 

je voulais dire le service d'envoi et de reception de message (net send)

n°1292272
wackevat
Posté le 25-01-2006 à 21:44:35  profilanswer
 

Tu voulais dire le service d'Affichage des Messages ?
 
Si oui, la commande est  
sc stop Messenger
et
sc start Messenger
 
Ca marche aussi avec :
net start/stop

n°1292273
Splinter_7
Posté le 25-01-2006 à 21:46:43  profilanswer
 

jte remercie ;)

n°1305952
AGA
La boîte à Bokeh!
Posté le 15-02-2006 à 11:44:28  profilanswer
 

salut,
 
est il possible d'afficher la valeur Errorlevel???
 
A+

n°1306049
wackevat
Posté le 15-02-2006 à 13:05:21  profilanswer
 

echo %ErrorLevel% ? :D

n°1306127
AGA
La boîte à Bokeh!
Posté le 15-02-2006 à 13:55:16  profilanswer
 

Evidemment. la teuhon. merci ;)

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [BATCH]Recuperation informations fichier

 

Sujets relatifs
Ecrire un fichier bit par bit.AS : Comment enregistrer dans un fichier xml?
Formulaire en batch[PHP] modifier un fichier de Nuked-klan
Trier un fichier en C[BATCH] renomer des fichiers dans tout le lecteur.
Informations de fichiers binaires (MP3)Afficher le contenu d'un fichier texte sur une page WEB ?
Comment inclure une font dans un fichier resource ?Problèmes d'écriture dans un fichier : fichier vide
Plus de sujets relatifs à : [BATCH]Recuperation informations fichier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR