Bonjour, je suis sur la création d'un fichier batch qui fait le ménage dans un répertoire en effaçant tout ce qu'il y a dedans, sauf 4 répertoires (All Users, Default User, LocalService, NetworkService).
Problème qui me prend la tête depuis un moment : pas moyen de vérifier la condition vraie quand il y a un espace dans la variable.
Même si i vaut Default User, pas moyen de vérifier la condition if %%i == Default User à cause de l'espace dans le nom. J'ai beau essayer avec if %%i == "Default User" , if %%i == 'Default User' , if %%i == Default User (espace insécable). J'ai aussi essayé avec delims= et tokens= mais j'avoue que je ne pige pas la subtilité de ces commandes.
Quelqu'un qui connait la solution peut-il regarder mon script ?
DIR /AD /B "E:\USERS" > %TEMP%\listeRepertoiresTEMP.txt
FOR /F "delims=" %%i in (%TEMP%\listeRepertoiresTEMP.txt) DO (
set efface=oui
if %%i == All Users set efface=non
if %%i == Default User set efface=non
if %%i == LocalService User set efface=non
if %%i == NetworkService User set efface=non
if !efface! == oui (
echo Suppression de %%i...
)
) |
Merci d'avance !!