Récupérer le lieu d'un fichier dans une variable puis l'utiliser dans cd %var%

Signaler
Messages postés
2
Date d'inscription
mercredi 4 juillet 2018
Statut
Membre
Dernière intervention
27 mars 2021
-
Messages postés
13394
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
20 avril 2021
-
Bonjour,
J'ai actuellement un problème. J'ai un fichier que l'on va appeler fichier1.bat et un autre fichier2.bat. Le premier, lorsque qu'on va l'ouvrir va permettre de se déplacer avec un truc custom :

set/p "explorer=EXPLORER>"
if %explorer%==ls goto ls
if %explorer%==cd goto cd
if %explorer%==pwd goto pwd
if %explorer%==exit goto exit
echo Commande inconnue.
goto explore
:ls
dir
goto explore
:cd
echo In wich directory do you want to go ?
set/p "cd=>"
cd %cd% >nul
goto explore
:pwd
cd c:
goto explore
:exit
fichier2.bat

Et c'est au niveau du :exit que j'ai un problème parce que le fichier a bougé et je ne peux plus le lancer.



Configuration: Windows 10 / Chrome 85.0.4183.83

2 réponses

Messages postés
13394
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
20 avril 2021
4 305
Bonjour,

Si fichier1 et fichier2 se trouvent dans le même dossier, alors tu peux utiliser la variable %~dp0 comme ceci :

:exit
%~dp0fichier2.bat





“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
Messages postés
2
Date d'inscription
mercredi 4 juillet 2018
Statut
Membre
Dernière intervention
27 mars 2021

Non, il se trouve dans le dossier supérieur.
Merci pour ta réponse.
Messages postés
13394
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
20 avril 2021
4 305
S'il se trouve dans le dossier supérieur, tu peux l'atteindre comme ceci :

:exit
../fichier2.bat


Ou bien au lieu d'utiliser CD tu peux t'amuser à bondir et revenir au point d'origine avec PUSHD et POPD