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

Résolu
ewenlau Messages postés 44 Statut Membre -  
barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   -
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

  1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    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
  2. ewenlau Messages postés 44 Statut Membre 2
     
    Non, il se trouve dans le dossier supérieur.
    Merci pour ta réponse.
    0
    1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
       
      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