я использую %0
в пакетном файле, чтобы получить каталог, содержащий пакетный файл, но результат: -
c:\folder1\folder2\batch.bat
Мне нужен только каталог без имени командного файла, например: -
c:\folder1\folder2\
Как мне это сделать? Может, мне следует отфильтровать путь. Если да, то как я могу это сделать?
%~p0
Вернет только путь.
%~dp0
Вернет диск + путь.
Более подробную информацию по теме можно найти на Сайт Microsoft.
Информацию об этом синтаксисе также можно найти в справке по для команда, выполнив for /?
в ОС Windows.
Текущий каталог находится в% CD%
Некоторые выражения, влияющие на имя файла:
~f0
даст полное имя файла.
~dpnx0
даст то же самое, что и ~f0
, но это показывает, что вы можете разбить его на части: d = диск p = путь n = имя x = расширение
используйте команду chdir
Опция 1:
chdir
Вариант 2:
echo %CD%