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

Résolu/Fermé
ewenlau Messages postés 43 Date d'inscription mercredi 4 juillet 2018 Statut Membre Dernière intervention 8 février 2023 - 27 mars 2021 à 07:41
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 - 27 mars 2021 à 10:43
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
A voir également:

2 réponses

barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
Modifié le 27 mars 2021 à 09:51
Bonjour,

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

:exit
%~dp0fichier2.bat




0
ewenlau Messages postés 43 Date d'inscription mercredi 4 juillet 2018 Statut Membre Dernière intervention 8 février 2023 2
27 mars 2021 à 10:34
Non, il se trouve dans le dossier supérieur.
Merci pour ta réponse.
0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
Modifié le 27 mars 2021 à 10:44
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
0