On peut obtenir de l'aide sur toutes les commandes en tapant leur nom suivi de /?
:
C:\>echo /? Affiche des messages ou active/désactive l'affichage des commandes. ECHO [ON | OFF] ECHO [message] ECHO sans paramètres affiche l'état en cours de la commande.
Affiche une chaîne sur la sortie. Permet également d'autoriser ou d'interdire l'affichage des commandes sur la sortie standard par les commandes ECHO ON et ECHO OFF
Le comportement par défaut de cmd.exe est d'afficher chaque commande sur la sortie standard avant de l'exécuter. C'est souvent non désiré, la commande ECHO OFF
est souvent donnée au début d'un fichier batch. Cmd.exe interprète également le @, préfixé à la commande, pour empêcher une seule commande de s'afficher. De ce fait, beaucoup de fichiers batch commencent par la ligne @ECHO OFF.
Commentaire.
Sert à modifier des variables d'environnement. Équivalent de set et export sous bash
Sorte de for. On peut grouper plusieurs commandes à l'aide de parenthèses. Par exemple :
for %x in (*.c) do ( echo copie de %x copy %x c:\sos\ )
Cette commande a de nombreuses options la rendant beaucoup plus puissante que sa version MS-DOS.
Décale les arguments. Équivalent du shift de bash.
Dirige cmd.exe sur une ligne étiquetée dans le programme de commandes. Les étiquettes sont sur un lignes précédées du caractère ":". Hérité des premières versions de COMMAND.COM qui ne permettaient pas beaucoup de structuration.
Le if connu de tous les programmeurs.
Utilisé avec IF, teste si la valeur de retour d'un programme atteint ou dépasse une erreur donnée. Equivalent du $? de bash. Par exemple:
IF ERRORLEVEL 6 GOTO label
Continuera l'exécution à l'étiquette label si le dernier programme exécuté a retourné une valeur supérieure ou égale à 6.
Appelle un autre programme batch. En effet l'appel simple à un fichier batch provoquera l'enchaînement du fichier sans retour possible vers le fichier appelant.
Permet également d'appeler une fonction (matérialisée par un label (:
) et un retour au programme principal par GOTO :EOF
)
Exemple d'appel de fonction avec un argument :
@ECHO OFF ECHO « Avant fonction1 » CALL:fonction1 arg1 ECHO « Apres fonction1 » REM Sortie du programme GOTO:EOF :fonction1 ECHO « Fonction1 avec argument: %1 » REM Sortie de la fonction GOTO:EOF
Démarre une nouvelle fenêtre pour ouvrir le fichier (avec le programme déterminé par l'extension du fichier) exécuter le programme ou la commande donné. Par exemple
start netscape
permet de démarrer la commande « netscape » dans une nouvelle fenêtre sans attendre la fin de son exécution. Il existe de nombreuses options.