Presumindo que o Windows cmd.exe
: "%~dp0\otherfile"
Aqui %0
faz referência ao arquivo em lote, ~
faz com que as aspas sejam removidas do valor, dp
significa "letra e caminho do disco".
Veja for /?
para obter uma lista completa de expansões. (Eles infelizmente só se aplicam a argumentos de linha de comando numerados e para variáveis em uma letra. Para usar essas expansões com variáveis de ambiente como %myfile%
, você terá que passá-las para uma sub-rotina com call :label
.)