how to get current directory for executing batch file from current directory? [duplicate]

Posted on

QUESTION :

I have a batch file(lunch.bat) to run which has command to run another batch file(main.bat). I copyied this two files in my pendrive. I know my pendrive’s drive latter in my computer,that’s why i can configure 1st batch file(lunch.bat) to run another batch on my computer. But when i copy this two files in my pendrive and insert it to another computer, 1st batch file can’t run another batch file. So this is a problem for me. Can anybody help me to get current directory command like c++(GetCurrentDirectory) function to run batch from any computer and from any drive?

ANSWER :

From Raymond Chen

The easy way is to use the %CD% pseudo-variable. It expands to the current working directory.

set OLDDIR=%CD%
.. do stuff ..
chdir /d %OLDDIR% &rem restore current directory

Batch command cd typed in without any parameters will return current working directory.

Put this code in the lunch.bat file:

call %~dp0main.bat

This starts the main.bat from the same drive & folder as the lunch.bat, wherever it is.

Leave a Reply

Your email address will not be published. Required fields are marked *