Я пытаюсь сменить каталог с диска C на диск E, но этого не происходит, как показано ниже:
C:\>cd E:\Program files\wkhtmltopdf
C:\>echo %cd%
C:\
Он говорит, C:\
что это текущий каталог даже после смены каталога. Пожалуйста, исправьте мою ошибку.
решение1
Это нормальное поведение. CD означает Change Directory (изменить каталог). Чтобы сменить диск, перейдите к нему, введя: E:, а затемenter
C:\>E:_
E:\Program Files\wkhtmltopdf>_
Однако он запомнит ваше действие cd, поэтому новый путь должен совпадать с тем, по которому вы перешли.
решение2
Изменить текущий диск
По умолчанию команды cd
или chdir
не изменят букву диска, на котором вы сейчас находитесь; вам нужно использовать параметр /d
. Например:
cd /d E:
При желании вы также можете использовать определенный путь:
cd /d "E:\Program files\wkhtmltopdf"
В качестве альтернативы вы можете использовать pushd
команду (push directory), например:
pushd "E:\Program files\wkhtmltopdf"
Главное преимущество перед cd
командой заключается в том, что вы можете использовать ее popd
для легкого восстановления предыдущего рабочего каталога и диска. Кроме того, pushd
команда также обеспечивает поддержкуУНКпути.
дальнейшее чтение
решение3
Часть ответа, которую никто не объяснил, заключается в том, что Windows отслеживает (до) 26 различных текущих каталогов для каждого процесса (по одному для каждого диска), поэтому, когда вы вводите
C:\> cd E:\Program Files\wkhtmltopdf
тыявляютсяизменение вашегоЭ:рабочий каталог \Program Files\wkhtmltopdf
-- но (как объяснялось в других ответах), вы не меняете свой текущийводить машинукЭ:, поэтому вы не увидите изменения в рабочем каталоге. ( %CD%
показывает только текущий каталогна текущем диске; он не показывает остальные 25 текущих каталогов.) Итак, вы можете ввести
C:\> cd E:\Program Files\wkhtmltopdf
а потом
C:\> E:
и вы окажетесь в E:\Program Files\wkhtmltopdf
. Но это запутанно и запутанно; используйте один из приемов в других ответах.