Как открыть командную строку в текущей папке с помощью сочетания клавиш?

Как открыть командную строку в текущей папке с помощью сочетания клавиш в Windows 7?
Есть ли способ реализовать это?
Я думаю, что Autohotkey мог бы сделать это, но не знаю как.

13 ответов

Решение

Используйте это сочетание клавиш: Shift + Меню, W, Enter

  1. Shift + Menu (или Shift + F10) (открывает расширенное меню правой кнопки мыши в текущей папке)

  2. W (выбирает "Открыть командное окно здесь"),

  3. Enter (активирует выбор; требуется, поскольку "Новый" также можно выбрать с помощью W)

Ключ меню относится к специальному ключу, введенному Microsoft, обычно справа от правой клавиши Win.

Этот ярлык доступен при стандартной установке Windows (7) без какого-либо стороннего программного обеспечения.


Путь AHK. Вам просто нужно нажать Win + C (или все, что вы хотите определить как.):

SetTitleMatchMode RegEx
return

; Stuff to do when Windows Explorer is open
;
#IfWinActive ahk_class ExploreWClass|CabinetWClass

    ; create new text file
    ;
    #t::Send !fwt

    ; open 'cmd' in the current directory
    ;
    #c::
        OpenCmdInCurrent()
    return
#IfWinActive


; Opens the command shell 'cmd' in the directory browsed in Explorer.
; Note: expecting to be run when the active window is Explorer.
;
OpenCmdInCurrent()
{
    ; This is required to get the full path of the file from the address bar
    WinGetText, full_path, A

    ; Split on newline (`n)
    StringSplit, word_array, full_path, `n

    ; Find and take the element from the array that contains address
    Loop, %word_array0%
    {
        IfInString, word_array%A_Index%, Address
        {
            full_path := word_array%A_Index%
            break
        }
    }  

    ; strip to bare address
    full_path := RegExReplace(full_path, "^Address: ", "")

    ; Just in case - remove all carriage returns (`r)
    StringReplace, full_path, full_path, `r, , all


    IfInString full_path, \
    {
        Run,  cmd /K cd /D "%full_path%"
    }
    else
    {
        Run, cmd /K cd /D "C:\ "
    }
}

В качестве бонуса приведенный выше скрипт также создает новый текстовый файл с таким сочетанием клавиш: Win + T

Кредит: Эли Бендерский

Нажмите Alt+D, введите cmd и нажмите Enter. Для более подробной информации см. Сообщение в блоге здесь.

Родной способ сделать что-то подобное в Windows7 - удерживать нажатой клавишу Shift, одновременно нажимая правую кнопку мыши на папке, к которой вы хотите "командную строку", и в контекстном меню появится новый пункт меню, предлагающий вам именно это: "открыть командную строку". Вот".

альтернативный текст

если вы хотите чисто клавиатурное действие, вы должны сделать это:

  • открыть regedit
  • идти к HKEY_CLASSES_ROOT\Directory\shell\cmd и переименовать Extended ключ к Extended_save
  • идти к HKEY_CLASSES_ROOT\Drive\shell\cmd и переименовать Extended key to Extended_save`

это добавляет запись "открыть окно команды здесь" в контекстное меню навсегда. Вы можете вызвать эту запись, нажав:

  • альт
  • отпустить, откроется контекстное меню
  • нажмите "подчеркнутый" символ в строке "открыть командное окно здесь" или нажмите клавиши курсора и нажмите Enter

название пункта меню помечается в соответствии с языком вашей ОС.

альтернативный маршрут должен сделать это:

  • откройте нужную папку в командной строке через проводник
  • f4
  • Ctrl A
  • Ctrl C
  • победа г
  • cmd /k cd Ctrl V Enter

который захватывает текущий путь из адресной строки проводника и выполняет cmd /k cd PATH, с autohotkeys вы можете сделать то же самое, но я не знаю autohotkeys.

От того, как открыть cmd-in-current-folder-by-shortcut-windows-10

Если вы используете Windows 8/10, есть более быстрый и оригинальный способ:

Alt + F, P

Просто три ключа и введите дважды, без помощи другой программы.

Начиная с последнего обновления Windows 10, метод ответа Shift + Menu, W от Leftium больше не работает. Тем не менее, небольшая модификация может предложить обходной путь, хотя и с еще несколькими нажатиями клавиш.

Проблема в том, что командная строка больше не доступна в расширенном меню правого клика. Вместо этого у вас теперь есть Windows Powershell.

Shift + Меню, S открывает Windows Powershell в целевой папке. Однажды в Windows Powershell введите cmd затем нажмите Enter.

Это даст вам доступ к командной строке в Windows Powershell.

PS

Метод Эшвина НанджаппыCtrl+L, тип cmdзатем нажмитеEnter работает. Однако это элегантно, только если вы не собираетесь возвращаться в окно проводника Windows для продолжения навигации по каталогам. К сожалению, этот метод выводит курсор в Windows Explorer из основного окна и требует нескольких нажатий клавишTab, чтобы вернуть его туда, где вы можете перемещаться по папкам с помощью клавиш со стрелками. Это может быть неприятно, поскольку при нажатии этих клавиш навкладке визуальное подтверждение ограничено.

В то время как Windows Powershell работает почти так же, как и в командной строке, я столкнулся по крайней мере с одним случаем, когда Windows Powershell ошибочно читал мои @tags (когда я генерировал javadocs) и не давал желаемого результата. Набравcmd затем войдите в Windows Powershell, вместо этого вы можете использовать командную строку, которая преодолевает такие проблемы.

A simpler AHK script than the one in the selected question

#c::cmdHere()

cmdHere() {
    If WinActive("ahk_class CabinetWClass") || WinActive("ahk_class ExploreWClass") {
        WinHWND := WinActive()
        For win in ComObjCreate("Shell.Application").Windows
            If (win.HWND = WinHWND) {
                dir := SubStr(win.LocationURL, 9) ; remove "file:///"
                dir := RegExReplace(dir, "%20", " ")
                Break
            }
    }
    Run, cmd, % dir ? dir : A_Desktop
}

source from here : https://autohotkey.com/boards/viewtopic.php?t=5796

Как насчет использования PowerShellOpenHere модуль?

Запустите PowerShell с повышенными правами и введите:

      Install-Module OpenHere
Set-OpenHereShortcut -ShortcutType:CMD

Отказ от ответственности:

Я разработчик этого модуля.

Для этого используется autohotkey.exe. Сохраните это с.ahkрасширение.

Если explorer.exe является активным окном, откройте cmd.exe, используя активное окно.PATH.

Если explorer.exe не является активным окном, откройте cmd.exe, чтобыC:\Windows\System32.

Запустите это самостоятельно или вызовите его с помощью главного сценария, используя#Include PATH\TO\BELOW\SCRIPT.ahk

      ; ###################
; #  OPEN CMD HERE  #
; ###################

!c::_OpenCMDHere()

_OpenCMDHere()
{
    GroupAdd, _GroupCMDHere, ahk_exe cmd.exe
    GroupClose, _GroupCMDHere, A
    If WinActive("ahk_class CabinetWClass") {
        _WinHWND := WinActive()
        For Win in ComObjCreate("Shell.Application").Windows
            If (Win.HWND = _WinHWND)
                _pwd := SubStr(Win.LocationURL, 9)
                _pwd := RegExReplace(_pwd, "%20", " ")
                _pwd := RegExReplace(_pwd, "/", "\")
            Run, "C:\Windows\System32\cmd.exe" /T:0A /D /K PROMPT $P$G$_$G & PUSHD "%_pwd%",, Max, WinPID
            WinWait, ahk_pid %WinPID%
            WinActivate, ahk_pid %WinPID%
    }
    Else {
        Run, "C:\Windows\System32\cmd.exe" /T:0A /D /K PROMPT $P$G$_$G & PUSHD "C:\Windows\System32\",, Max, WinPID
        WinWait, ahk_pid %WinPID%
        WinActivate, ahk_pid %WinPID%
    }
}
Return


Обновлять:

Это еще проще и соответствует тому, что сказал выше пользователь MagTun. Это также устранило проблемы с путями, которые возникали, когда в пути к файлу находится символ «&».

      !c::_OpenCMDHere()

_OpenCMDHere()
{
    If WinActive("ahk_class CabinetWClass")
        _WinHWND := WinActive()
        For Win in ComObjCreate("Shell.Application").Windows
            If (Win.HWND = _WinHWND)
            {
                _pwd := SubStr(Win.LocationURL, 9)
                _pwd := RegExReplace(_pwd, "%20", " ")
                _pwd := RegExReplace(_pwd, "%26", "&") ; Fix issues with '&' in the path
                _pwd := RegExReplace(_pwd, "/", "\")
            }
    Run, "C:\Windows\System32\cmd.exe" /T:0A /D /K PROMPT $P$G$_$G, % _pwd ? _pwd : "C:\Windows\System32\", Max
}
Return

Самый простой способ - зайти в адресную строку проводника Windows и ввести cmd, он сразу же откроет командную строку из этого места.

Скрипт AutoHotKey для открытия командной строки с использованием метода @Ashwin

Откройте консоль Powershell с помощью Win P

#P::
{
    Send !D
    Send powershell
    Send {Enter}    
    return
}

Откройте командную строку с помощью Win C

#C::
{
    Send !D
    Send CMD
    Send {Enter}    
    return
}

Если вы используете немецкую версию Windows, вы можете сделать это:

Нажмите Alt+D,E

Alt+D открывает меню, где вы можете выбрать несколько других вещей, кроме cmd

Шаг 1. Просто откройте проводник.

Шаг 2. Зайдите в папку , в которой вы хотите открыть cmd.

Шаг 3. После входа в эту папку введите cmd в адресной строке и нажмите Enter . (Адресная строка находится рядом с строкой поиска в проводнике) Бум. CMD откроется в текущем местоположении.

Надеюсь, вам понравится ответ. Большое спасибо.

Для AHK следующее обязательство:

#c::
Run, C:\Windows\system32\cmd.exe
return

Это не открывает текущую папку, но это удобно.

Другие вопросы по тегам