Je dois saisir le nom du dossier d'un fichier de traitement en cours d'exécution. Je suis en train de boucler sur le répertoire courant en utilisant la syntaxe suivante (ce qui est faux à l'heure actuelle):Windows batch - boucle sur la chaîne du dossier et analyse le nom du dernier dossier
set mydir = %~p0
for /F "delims=\" %i IN (%mydir%) DO @echo %i
Couple de questions dans ce que je ne peux pas sembler passer le « monrep » valeur variable comme la chaîne de recherche . Cela ne semble fonctionner que si je passe des commandes; J'ai la syntaxe erronée et je n'arrive pas à comprendre pourquoi. Je pensais à boucler sur la chaîne du dossier avec un délimiteur '\' mais cela posait aussi des problèmes. Si je définis une variable sur chaque boucle, la dernière valeur définie sera le nom du dossier actuel. Par exemple, étant donné le chemin suivant:
C: \ Dossier1 \ Dossier2 \ Folder3 \ Archive.bat
j'attendre à analyser la valeur 'Folder3'.
Je dois analyser cette valeur car son nom fera partie d'un autre dossier que je vais créer plus bas dans le fichier séquentiel.
Un grand merci si quelqu'un peut vous aider. Il se peut que j'aboie complètement le mauvais arbre, de sorte que d'autres approches seraient grandement reçues.
Il aime bien '' 'comme délimiteur, il suffit de mettre% mydir% entre guillemets comme dans '%% i IN ("% mydir% ")' – ErikE