FAQ Windows Batch
FAQ Windows BatchConsultez toutes les FAQ
Nombre d'auteurs : 11, nombre de questions : 104, dernière mise à jour : 15 juin 2021
- Comment demander à l'utilisateur de saisir un mot et le placer dans une variable ?
- Comment créer une variable dans un batch ?
- Comment remplacer un caractère dans une variable ?
- Comment créer et utiliser une variable dans une même boucle for ?
- Comment décomposer un chemin de fichier contenu dans une variable ?
On utilise la commande set avec le commutateur /p.
La syntaxe est :
set /p nomVariable= Invite
L'invite est le message affiché à l'utilisateur pour lui demander une saisie.
Exemple :
set /p nom= Entrez votre nom :
On utilise la commande set :
set nomDeLaVariable=contenuDeLaVariable
Dans cet exemple on remplace les 'a' par des 'e' :
Set nomDeLaVariable=% nomDeLaVariable:a=e%
Il faut utiliser l'expansion retardée de variable d'environnement : On ajoute setlocal enableDelayedExpansion avant la boucle.
setlocal enableDelayedExpansion
for /F %%D in (c:\Mon_fichier) do (
for /F "tokens=4 delims=\" %%E in ("%%D") do (
set mavar=%%E
echo !mavar!
pause
)
)
endlocal
Si la variable qui contient le chemin est %1, alors on peut la décomposer de la façon suivante :
%1 = Chemin complet du fichier
%~n1 = nom du fichier sans l'extension
%~x1 = extension du fichier
%~nx1 = nom et extension du fichier