
в пакетном файле я могу использовать
set srcpath=%cd%
для сохранения пути к текущей папке в переменной srcpath
и последующего ее использования.
Но предположим, что я уже нахожусь в команде dos, похоже, это не работает.
есть ли способ в командной строке Windows сохранить путь в переменной, а затем использовать его позже?
решение1
В Windows 7 для установки переменной, равной текущему каталогу:
C:\Program Files>set p=%cd%
Тест:
C:\Program Files>echo %p%
C:\Program Files
C:\Program Files>cd \
C:\>echo %p%
C:\Program Files
решение2
Я всегда начинаю свои скрипты с переменной var, чтобы отслеживать текущий каталог и иметь возможность запускать скрипты где угодно.
set CURDIR=%~dp0
set srcpath=%~dp0
При вызове необходимо знать, что в путь включен символ \, поэтому исключите его при вызове подкаталогов и всегда используйте кавычки.
Start "title" "%srcpath%Sub Directories\Wiget.exe"
Обратите внимание на \ после Var srcpath, поскольку он включен в эту var. Используйте кавычки при вызове Var, а не при объявлении, и тогда пробелы не будут проблемой.