batch script to set a variable with the current path location

The current directory is in the "shadow" variable cd.
You could try

set "var=%cd%"

%~dp0

This expands into the drive & path of the currently running batch file. I usually surround my batch files with something like:

@echo off
pushd %~dp0

...

popd

Edit: It seems I didn't understand the OP. My example gets the location of the currently running script, not the "Current Directory". +1 to jeb.


I think there is a little confussion here. %CD% always have the current directory, so you don't need to add anything to have it. However, by rereading your original question, I think that you need the LAST PART of the current directory, that is, the name of the current location excluding all previous locations. If so, then you may use this:

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%