Here's the question:
set Pathname = C:\Program Files
cd %Pathname%
pause
The above doesn't change the directory, as I would expect. Can anybody please tell me why?
The set statement doesn't treat spaces the way you expect; your variable is really named Pathname[space] and is equal to [space]C:\Program Files.
Remove the spaces from both sides of the = sign, and put the value in double quotes:
set Pathname="C:\Program Files"
Also, if your command prompt is not open to C:\, then using cd alone can't change drives.
Use
cd /d %Pathname%
or
pushd %Pathname%
instead.
SET C:\Program Files would also have worked.set Pathname=C:\Program Files, but yeah, it does work with spacescd and pushd behave nicely with or without quotes around the path. md, rd and copy don't, to name a few. I generally put quotes around all paths that use spaces, just to be safe./d was needed for me since I was CD'ing to a different drive EG, cd from C: to G: required /dsimple way to do this... here are the example
cd program files
cd poweriso
piso mount D:\<Filename.iso> <Virtual Drive>
Pause
this will mount the ISO image to the specific drive...use