Когда вы запускаете пакетный скрипт, перетаскивая на него другой файл, в качестве пути используется местоположение файла, перетаскиваемого на пакетный скрипт.
Как я могу сослаться на файл, который находится в той же папке, что и пакетный скрипт?
Когда вы запускаете пакетный скрипт, перетаскивая на него другой файл, в качестве пути используется местоположение файла, перетаскиваемого на пакетный скрипт.
Как я могу сослаться на файл, который находится в той же папке, что и пакетный скрипт?
Предполагается, что Windows cmd.exe: "%~dp0\otherfile"
Здесь %0 ссылается на командный файл, ~ вызывает удаление любых кавычек из значения, dp означает "букву диска и путь".
Смотрите for /? для полного списка расширений. (К сожалению, они применяются только к пронумерованным аргументам командной строки и для однобуквенных переменных. Чтобы использовать такие расширения с переменными среды, такими как %myfile% , вам нужно передать их в подпрограмму с помощью call :label .)