cd "C:\path\to\directory\" >nul & echo %CD%
Скажем, я запустил это в C:\dir
. Я ожидаю, что он выведет C:\path\to\directory
, так как это то, что он делает, если я запускаю каждую команду по отдельности и последовательно. Но это не так. Когда две команды сортируются вместе, он выводит текущий путь - например. C:\dir
.пытается получить абсолютный путь к файлу от относительного пути от CLI
Любые идеи, почему? Альтернативно, любые идеи относительно того, как я могу получить полный путь от относительного пути через CLI?
По отношению к чему? Кому% cd%? – Endoro
К текущему каталогу. то есть. скажем, вы находитесь в папке 'C: \ path \ to \ directory \'. Вы делаете 'cd .. \ ..', а затем '' echo% CD% ', и вы получите' C: \ path \ '. Но' cd ".. \ .."> nul & echo% CD% ' не дает мне то же самое, и я хочу знать почему. – neubert
Это на самом деле функция. Вы можете сделать 'cd \ something \ else & do something & cd% CD%', и она изменится на другой каталог, do что-то, затем измените назад. –