Comment puis-je définir une variable avec l'emplacement actuel? comme si j'arrivais dans c:\test et définissais la variable ce serait test .. et si j'arrivais à l'intérieur de c:\test\test2 la variable serait test2? ...
Je pense utiliser un for pour entrer dans un grand nombre de dossiers et vérifier si un fichier existe, si le bon fichier existe, je veux définir le dossier actuel sur une variable afin de pouvoir copier le chemin et copier ce dossier ...
Ok donc le problème principal est de copier le reste des fichiers dans le même dossier que le .inf ... s'il vous plaît aidez-moi!
Je vous remercie beaucoup
Le répertoire courant est dans la variable "shadow" cd.
Tu pourrais essayer
set "var=%cd%"
%~dp0
Cela se développe dans le lecteur et le chemin d'accès du fichier de commandes en cours d'exécution. J'entoure généralement mes fichiers batch avec quelque chose comme:
@echo off
pushd %~dp0
...
popd
Edit: Il semble que je n'ai pas compris l'OP. Mon exemple obtient l'emplacement du script en cours d'exécution, pas le "répertoire actuel". +1 à jeb.
Je pense qu'il y a une petite confusion ici. % CD% a toujours le répertoire actuel, vous n'avez donc pas besoin d'ajouter quoi que ce soit pour l'avoir. Cependant, en relisant votre question d'origine, je pense que vous avez besoin de la DERNIÈRE PARTIE du répertoire actuel, c'est-à-dire le nom de l'emplacement actuel à l'exclusion de tous les emplacements précédents. Si oui, alors vous pouvez utiliser ceci:
set i=0
:nextdir
set /a i+=1
for /f "tokens=%i% delims=\" %%a in ("%CD%") do if not "%%a" == "" set lastdir=%%a& goto nextdir
echo Current location: %lastdir%