How to get the path of the batch script in Windows?
batch-file, windows
Solution
`%~dp0` will be the directory. Here's some documentation on all of the path modifiers. Fun stuff :-)
To remove the final backslash, you can use the `:n,m` substring syntax, like so:
SET mypath=%~dp0
echo %mypath:~0,-1%
I don't believe there's a way to combine the `%0` syntax with the `:~n,m` syntax, unfortunately.
Problem
I know that `%0` contains the full path of the batch script, e.g. `c:\path\to\my\file\abc.bat` I want `path` to be equal to `c:\path\to\my\file`. How can I achieve that?