Как я могу получить имя сценария Windows .bat из самого сценария?
У меня есть файл.bat. Я хочу программно получить имя файла.bat. Как я могу это сделать?
Это моя конечная цель
"..\lib\nant\nant.exe" -buildfile:nant.build {{pass in name of this file here}}
pause
2 ответа
Решение
Пытаться for /?
в командной строке. Справка показывает все виды полезных замен имени файла, такие как:
%~I - expands %I removing any surrounding quotes (")
%~fI - expands %I to a fully qualified path name
%~dI - expands %I to a drive letter only
%~pI - expands %I to a path only
%~nI - expands %I to a file name only
%~xI - expands %I to a file extension only
Замените I на 0, чтобы получить только имя пакетного файла, и замените I на 1, 2, 3 и т. Д., Чтобы получить имена аргументов.
Переменная%0% предоставит вам полный путь к пакетному файлу, включая его имя. Там может быть лучший способ получить только имя.