Les paramètres remplaçables %0 et %1 à %9 peuvent être insérés n'importe où dans un fichier de commandes. Lors de l'exécution du fichier de commandes, %0 est remplacé par le nom du fichier de commandes tandis que les variables d'argument %1 à %9 sont remplacées par les paramètres correspondants entrés sur la ligne de commande.

Pour copier le contenu d'un dossier vers un autre, par exemple, ajoutez l'instruction suivante à votre fichier de commandes :

xcopy %1\*.* %2

Quand vous exécutez le fichier, tapez :

monprog.bat C:\adossier D:\bdossier.

L'effet est identique à celui obtenu en tapant xcopy C:\adossier \*.* D:\bdossier dans le fichier de commandes.

Le paramètre % développe les variables d'argument du script de commandes (%0, %1, ..., %9) de la manière suivante :

Dans un script de commandes, %* est une référence générique à tous les arguments. Pour les variables d'argument séparées, les options d'extension sont décrites dans les tableaux suivants.

Variable Description
%~1 Développe %1 et supprime les guillemets (") qui entourent la variable.
%~f1 Développe %1 en un chemin complet.
%~d1 Développe %1 en une lettre de lecteur.
%~p1 Développe %1 en un chemin.
%~n1 Développe %1 en un nom de fichier.
%~x1 Développe %1 en une extension de fichier.
%~s1 Le chemin développé ne contient que des noms courts.
%~a1 Développe %1 en attributs de fichier.
%~t1 Développe %1 avec la date et l'heure du fichier.
%~z1 Développe %1 avec la taille du fichier.
%~$PATH:1 Effectue la recherche dans les répertoires énumérés par la variable d'environnement PATH et développe %1 avec le nom complet de la première occurrence trouvée. Si le nom de la variable d'environnement n'est pas défini ou si la recherche ne trouve pas de fichier, ce modificateur se développe en une chaîne vide.

Les modificateurs peuvent être combinés pour obtenir des résultats composés.

Variable Description
%~dp1 Développe %1 en une lettre de lecteur et un chemin.
%~nx1 Développe %1 en un nom de fichier et une extension.
%~dp$PATH:1 Effectue la recherche dans les répertoires énumérés par la variable d'environnement PATH et développe %1 avec la lettre de lecteur et le chemin de la première occurrence trouvée.
%~ftza1 Développe %1 en une ligne de sortie de type dir.

Dans les exemples ci-dessus, %1 et PATH peuvent être remplacés par d'autres valeurs valides. La syntaxe %~ doit se terminer par un numéro d'argument valide. Les modificateurs %~ ne peuvent pas être utilisés avec %*.