Tom's Guide > Forum > Programmation > BATCH ... beaucoup de questions sans réponse !

BATCH ... beaucoup de questions sans réponse !

Forum Programmation : BATCH ... beaucoup de questions sans réponse !

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bon voila mes questions :

[b]Comment vérifier si une chaine de caractère existe dans un fichier, si c'est le cas alors mon fichier executera commande1 et si non la commande2.

[b]Verifier si un processus est actif si oui commande1 si non commande2
(pour cette questions je pouré enregistrer tout les processus actif dans un fichier puis chercher si la chaine de caractère existe dans ce fichier pour savoir si le procesus est actif mais il faudrait que je trouve la réponse à ma première question ....)

[b]Comment sa marche la variable set /P variable= ... ?
Alors ce que je ne comprend pas c'est :

1er cas :

Code :
  1. set /P variable=<fichier1.txt


fichier1.txt contient : 1
donc si je fais :

Code :
  1. set /P variable=<fichier1.txt
  2. if %variable%==1 start you_win.jpg
  3. start you_lose.jpg


Le resultat serais que l'image you_win.jpg sera affiché. Jusque la pas de problem.

[[b]Le problem :

Code :
  1. set /P variable2=<fichier2.txt


dans ce cas mon fichier fichier2.txt contient : 1
2
C'est à dire le nombre 1 et le nombre 2 au dessous du nombre 1 en plus clair : 1 est à la première ligne du fichier fichier2.txt et le nombre 2 est à la ligne 2 de ce meme fichier. Donc dan ce cas ma commande (au dessus) elle récupère quoi ??
Si elle récupère "1" comment faire pour qu'elle récupère "2" ?

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

1. commande FIND
2. sous windows aucune idée (peut-être en lisant la base de registre mais j'en doute un peu)
3. il faut simuler ;-)
si tu ne met pas le <fichier, et que tu tapes:
1, Entrée, 2, Entrée
et bien ça fera la même chose. Sauf que une fois avoir appuyé sur entrée, la commande se termine, le buffer clavier est vidé donc la commande suivante le prend pas la suite.
donc ça fera 1, Entrée

Répondre à CRicky

Non dans tout es cas j'utiliserais : <fichier1.txt
comme je l'ai indiqué plus ba. Dans ce cas comment faire ?

Répondre à Dark_Silver

je sais que tu le met, mais je te disais de ne pas le mettre, et de taper toi même le contenu du fichier, pour que tu te rende compte de ce qu'il se passe:
le contenu de la variable s'arrete au premier retour à la ligne, puisque c'est comme si on validait en appuyant sur la touche "Entrée". Le reste est ignoré.

Si tu veux récuperr les 2 fait un for sur le contenu de fichier:

Code :
  1. for /F %%i in (fichier1.txt) do ton_script_lancement %%i



et ton script serait:

Code :
  1. if %1==1 ( start you_win.jpg
  2. ) else (
  3. start you_lose.jpg
  4. )


Répondre à CRicky

Bon mmm que dire ?? Merci !!?? lol bon et bien comme d'habitude tu me sauve la mise.

Répondre à Dark_Silver
Tom's Guide > Forum > Programmation > BATCH ... beaucoup de questions sans réponse !
Aller à :

Il y a 293 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens