Skip navigation.

digital-nation

Blog-note d'un informaticien procrastinate...

MS-DOS : créer une pause d’exécution

, , , , , , , , , , , , ,

Non le BATCH n’est pas mort !

Alors que l’on parle de plus en plus de script de génération avancée, j’ai du pour des raisons professionnelles descendre vers la programmation en langage MS-DOS (oui bon ; pas de commentaire là-dessus !). Mais grand bien m’en a fit.
J’ai pu revoir quelques principes et faire quelques découvertes assez sympathique.

Une de celles-ci fut notament l’art et la manière de faire une pause d’exécution dans un fichier de commande (BATCH, extension .bat).
D’autres avait bien entendu déjà pensé à faire cela. Je pense spécifiquement au WAIT.BAT ou encore des SLEEP.BAT…

Mais je me suis dit pourquoi ne pas faire encore plus simple, mais j’avoue que la technique n’est pas des plus propres (mais si vous regardez aussi les fichiers cités plus haut, c’est tout aussi sale que mon exemple). Faire un PING vers un hôte inexistant avec une attente de réponse élevée.

En code cela donne ceci :
PING MONHOTEINCONNU -N 1 -W 10000
REM –N indique le nombre de requête envoyées, ici 1
REM –W indique le temps d’attente (timeout), ici 10 secondes

Cela donnera un temps mort au script… Peut-être juste le temps d’afficher (via ECHO) un logo ? Une information ? Une action ?
Rappelons-nous que nous pouvons très bien le faire :
REM echo. pour afficher une ligne vide
ECHO.
ECHO.
REM caractere speciaux pour faire du dessin
ECHO °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
ECHO ° WELCOME ON THE NETWORK °
ECHO °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
ECHO -----------------------------------------------
ECHO Please wait
ECHO -----------------------------------------------
ECHO.
PING MONHOTEINCONNU –N 1 –W 10000

Mais ce que j’apprécie surtout c’est d’avoir pu insérer de l’ASCII ART dans le script… Pour un logo par exemple :
ECHO.
ECHO.
ECHO   #####                                                  
ECHO  #     # #####   ####  #    # #    # #####  #    # #   # 
ECHO  #       #    # #    # #    # ##  ## #    # #    #  # #  
ECHO  #  #### #    # #    # #    # # ## # #    # ######   #   
ECHO  #     # #####  #    # #    # #    # #####  #    #   #   
ECHO  #     # #   #  #    # #    # #    # #      #    #   #   
ECHO   #####  #    #  ####   ####  #    # #      #    #   #  
ECHO.
ECHO.
PING MONHOTEINCONNU –N 1 –W 10000
[code]
Je trouve plutôt cela sympa… Autant attendre avec quelque chose qui peut être joli.
Et si nous voulons peaufiner nous pouvons aussi utiliser COLOR et @TITLE.
Respectivement ils définiront une couleur de fond et de police ainsi que le titre de la fenêtre MS-DOS.
[code]
COLOR FA
@TITLE LOGON SCRIPT
ECHO.
ECHO Ici mon texte ou mon logo
ECHO.
PING MONHOTEINCONNU –N 1 –W 10000

Et bien entendu nous précederons toutes nos lignes par un @ECHO OFF et un @CLS. A chaque informations que nous affichons nous pourrons donc l’éffacer…
Plutôt simple et efficace. J’aime.

Microsoft Office Excel & OpenOffice.org 2++ : détecter un caractère dans une chaineMS-DOS : détecter un environnement virtuel

How to use Quote function:

  1. Select some text
  2. Click on the Quote link

Write a comment

Comment
(BBcode and HTML is turned off for anonymous user comments.)

If you can't read the words, press the small reload icon.


Smilies

December 2009
M T W T F S S
November 2009January 2010
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31