DOS/Shift

Un livre de Wikibooks.

< DOS

[modifier] Introduction

La commande SHIFT permet de faire un décalage des paramètres.

Dans un script, il est possible d'accéder aux paramètres de la ligne de commande en utilisant les variables %0, %1, %2, etc. L'appel de la commande SHIFT décale le contenu des variables dans la variable précédente, ainsi %0 contient ce que contenait %1, %1 contient ce que contenait %2, etc.

Ceci peut être utile pour lister et traiter tous les paramètres. Il suffit de ne lire que la variable %1 et de faire un appel à la commande SHIFT à chaque boucle.

[modifier] Utilisation

SHIFT [/n]

n représente un nombre indiquant le paramètre à partir duquel le décalage des paramètres commence.

[modifier] Exemple

Le script suivant affiche les informations sur les paramètres de la ligne de commande en bouclant sur ceux-ci.

@ECHO OFF

SET /A nbParams=0

ECHO Nom de la commande : %0

:debut_boucle
IF "%1"=="" GOTO fin_boucle

ECHO Paramètre courant : %1
SHIFT
SET /a nbParams+=1

GOTO debut_boucle
:fin_boucle

ECHO Nombre de paramètres : %nbParams%

Dans cet exemple, la boucle s'arrête lorsque le paramètre est un texte vide signifiant qu'il n'y a plus de paramètre.