Я хочу иметь возможность набирать "..", чтобы перейти в родительский каталог, а не "cd ..". Возможно ли это в командной строке Windows?
2 ответа
Не только с cmd.exe . Даже если вы успешно создадите файл ..
.bat, он не будет распознан и вызван при вводе ..
и нажатии Enter .
Но вы можете достичь этого, однако. Если вы устанавливаете бесплатный инструмент AutoHotKey , следующий макрос отправляет ожидаемую команду всякий раз, когда вы нажимаете Ctrl+↑ (только в окне с cmd.exe
в заголовке):
#IfWinActive cmd.exe
F9::
^up::Send {Esc}cd..{Enter}
F12::
^+up::Send {Esc}cd{asc 92}{Enter}
#IfWinActive
Проверено, работает хорошо.
Редактировать:
Бонус: я расширил макрос.
Ctrl+↑ или просто F9 делает
cd..
Ctrl+Shift+↑ или просто F12 делает
cd\
Я не отображал ключи между F1 и F8, потому что они уже используются в
cmd.exe
.
Да, вы можете использовать doskey.exe
для этого. Это было доступно в любых последних версиях ОС (и не так уж недавно ... Дос 6.22). Всегда доступный, малоизвестный - предоставляет историю, среди других функций.
doskey ..=cd ..
C:\temp>..
C:\>
Техническая справка https://technet.microsoft.com/en-us/library/cc753867(v=ws.11).aspx
Чтобы сделать этот макрос постоянным, вам нужно настроить его через автозапуск.
Из help cmd
Если /D НЕ было указано в командной строке, то при запуске CMD.EXE он ищет следующие переменные реестра REG_SZ /REG_EXPAND_SZ, и, если присутствует один или оба, они выполняются первыми.
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
and/or
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun