Есть ли команда изменить текущий каталог на каталог по умолчанию? (Я не спрашиваю о постоянном изменении каталога по умолчанию, здесь!)
Например, если текущим каталогом является «..\xyz», а каталогом командной строки по умолчанию является D:\Abc, есть ли способ перейти непосредственно к D:\Abc (без указания> cd D:\Abc)?
6 ответов
Для этого нет встроенного в cd
, но вы наверняка можете создать файл сценария .cmd
, который это делает. Например, вы можете поместить это в файл home.cmd
где-нибудь в вашем поисковом PATH
и перейти к D:\Abc
просто набрав home
:
@ echo off
cd /D D:\Abc
Там нет встроенной команды, но почему бы не создать свою собственную, например, dd (Default Directory)? Просто сохраните следующую команду в файле пакета / сценария в любом месте, например, C:\Macros.bat или C:\Macros.cmd:
@doskey dd=cd /d D:\Abc
Теперь в реестре (Regedit.exe) перейдите к:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor
Создайте строковое значение (REG_SZ) или раскрываемое строковое значение (REG_EXPAND_SZ) с именем AutoRun и установите для него значение C:\Macros.bat (или .cmd в зависимости от обстоятельств).
То же значение AutoRun также можно добавить к:
HKEY_CURRENT_USER\Software\Microsoft\Command Processor
Все команды, указанные в значении автозапуска HKLM, будут выполняться раньше, чем в аналоге HKCU. Смотри cmd /?
для большего.
Теперь каждый раз, когда вы открываете экземпляр / окно cmd.exe, Macros.bat (или .cmd) будет выполняться автоматически, и в результате будет (повторно) создан псевдоним команды DOSKey. Таким образом, вы можете просто ввести новую команду dd, чтобы перейти к указанному каталогу по умолчанию.
cd %HOMEPATH%
Хотя создание пакетного файла, как упоминает Николь, возможно, проще.
Хорошо, если ваша командная строка начиналась с D:\Abc
и вам нужно всего лишь находиться в ..\xyz
для нескольких команд, используйте команды pushd
и popd
. Вот пример пакетного скрипта:
@echo off
echo.Im at this directory: %CD%
pushd "..\xyz"
echo.Im now at this directory: %CD%
popd
echo.Im back at this directory: %CD%
pause
В противном случае вам нужно будет использовать команду cd
чтобы изменить текущий каталог. Это работает только для пакетного сценария.
@echo off
echo.Im at this directory: %CD%
cd "..\xyz"
echo.Im now at this directory: %CD%
cd "%~dp0"
echo.Im back at this directory: %CD%
pause
Обратите внимание, что «% ~ dp0» вернет вас в исходный каталог, в котором запущен пакетный скрипт.
Это универсальная команда для создания "домашнего" командного инструмента на любом компьютере с Windows.
Нажмите Win R и введите следующую команду:
CMD /C ((SETLOCAL ENABLEDELAYEDEXPANSION &ECHO ^@ECHO OFF &ECHO ECHO Changing to "home" directory... 1^>CON&ECHO CD /D %%USERPROFILE%%)1>"%SYSTEMROOT%\home.cmd")
Я знаю, что опоздал на игру, но я хотел бы опубликовать свое решение для всех, кто сталкивается с этим вопросом (как я). Я создал простое руководство, о котором никто не упомянул, и это более легкая и более прямая IMO. Проверьте это:Spiceworks - Изменить каталог по умолчанию
Откройте расположение командной строки.
На начальном экране / в меню введите "cmd", щелкните его правой кнопкой мыши и выберите "Открыть местоположение файла".
Откройте свойства командной строки и измените свойство "Пуск в".
Щелкните правой кнопкой мыши значок "Командная строка", выберите "Свойства" и отредактируйте свойство "Начать с" по своему желаемому пути.