How can I open a command prompt in current folder with a keyboard shortcut?

116

57

How can I open a command prompt in current folder with a keyboard shortcut in Windows 7?
Is there any way to implement this?
I think Autohotkey could do this, but don't know how.

Gemili

Posted 2010-10-31T05:54:15.220

Reputation: 1 263

4Protip: Shift right-click > Open Command Window Here – Derek 朕會功夫 – 2015-07-02T03:10:11.957

1

Related: Open command prompt window without holding shift

– slhck – 2013-02-25T10:19:25.280

Answers

122

Use this keyboard shortcut: Shift + Menu, W, Enter

  1. Shift + Menu (alternatively, Shift + F10), (opens extended right-click menu in current folder)

  2. W (selects "Open Command Window Here"),

  3. Enter (activates selection; required since "New" is also selectable with W)

The Menu key refers to the special key introduced by Microsoft, usually to the right of the right Win key.

This shortcut is available on a default installation of Windows (7) without any 3rd party software.


The AHK way. You just need to press Win + C (or whatever you want to define it as.):

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:\ "
    }
}

As a bonus, the script above also creates a new text file with this shortcut: Win + T

Credit to: Eli Bendersky

Leftium

Posted 2010-10-31T05:54:15.220

Reputation: 8 163

This was the only working solution out of all the AutoHotkey snippets I found on the web. Thanks a lot! – Lucas – 2014-10-23T10:35:16.233

2Does not work for me. – boleslaw.smialy – 2015-07-29T12:20:02.440

any way to get an elevated console? – jiggunjer – 2016-01-15T02:34:49.890

Also doesn't work for the desktop, if you count that as a current folder... – jiggunjer – 2016-01-15T02:54:25.987

@boleslaw.smialy : maybe it is you're not using an American/English version of Windows? (With the Italian wersion you should use 'f' instead of 'w' for instance) – danicotra – 2016-12-03T14:26:18.387

May I ask you, just of curiosity, why you changed original script in this line: Loop, %word_array0%... instead of keeping original full_path = %word_array1%? – john c. j. – 2017-04-28T16:10:12.267

@johnc.j.: Honestly, it was so long ago I don't even recall modifying the original script. The difference my version checks all array elements for the address, instead of just assuming the address is in the first element. – Leftium – 2017-04-28T21:49:52.660

3ah, shift-menu is nice. – akira – 2010-10-31T11:50:48.877

How do you use this script exactly? – Jonathan – 2011-02-01T07:12:08.670

@Jonathan: Install Auto-HotKey (http://www.autohotkey.com/). Copy the script contents to the AutoHotkey.ahk file. (probably in %USERPROFILE%\documents\) Restart Auto-Hotkey.

– Leftium – 2011-02-01T08:17:33.317

120

Press Alt+D, type cmd and press Enter. For more details see blog post here.

Ashwin Nanjappa

Posted 2010-10-31T05:54:15.220

Reputation: 8 705

This opens a cmd window, but it does not open one at the current directory. The same thing can be accomplished with win+r, cmd – Ed Orsi – 2014-07-02T19:02:51.877

1Note - You do not need to press Alt+d for this to work. All I had to do in Windows 7 was type cmd into the path of windows explorer and press enter. Alt+d just automatically selects the current path. – MiniRagnarok – 2015-07-30T12:50:51.630

3Ctrl+L is an alternative. – pkr298 – 2015-09-29T14:56:55.650

1Beautiful! Simple – Uzumaki Naruto – 2017-03-24T06:52:12.603

man, I wish I could vote twice for you! – JohnTortugo – 2018-07-08T05:38:56.333

1This is actually the most straightforward answer, thank you! – Alexandre Daubricourt – 2019-09-18T20:46:32.640

1nice! the other option doesn't seem to show the "open command window here" option unless you right-click on a folder - inside the folder, it doesn't show – divillysausages – 2013-02-26T21:55:22.483

42

the native way to do something similar in windows7 is to hold down shift while pressing the right mouse onto the folder you want to "command prompt" to and a new menu item will appear in your context menu offering you exactly that: "open command prompt here".

alt text

if you want pure keyboard action then you have to do this:

  • open regedit
  • go to HKEY_CLASSES_ROOT\Directory\shell\cmd and rename the Extended key to Extended_save
  • go to HKEY_CLASSES_ROOT\Drive\shell\cmd and rename the Extended key toExtended_save`

this adds the "open command window here" entry to the context menu permanently. you can trigger this entry by pressing:

  • alt
  • let go, context menu opens
  • press the "underscored" character of the "open command window here" entry or go down with your cursor keys and hit enter

the name of the menu entry is labled according to the language of your OS.

an alternative route is to do this:

  • open the folder you want in the command prompt via the explorer
  • f4
  • ctrla
  • ctrlc
  • winr
  • cmd /k cd ctrlventer

which grabs the current path from the address bar of explorer and executes cmd /k cd PATH. with autohotkeys you can do the same, but i do not know autohotkeys.

akira

Posted 2010-10-31T05:54:15.220

Reputation: 52 754

Thanks! I knew the first way, even it is simple enough, i still like the way of using keyboard shortcuts. And the second way seems a little complicated – Gemili – 2010-10-31T06:50:19.570

Love it, +1 10 char min – jcollum – 2011-04-07T15:34:10.647

9

From how-to-open-cmd-in-current-folder-by-shortcut-windows-10

If you are using Windows 8/10, there is a faster and original way :

Alt + F, P

Just three key and type twice , without help of another program.

Mithril

Posted 2010-10-31T05:54:15.220

Reputation: 617

Thanks. Because of your tip, I was able to discover Alt + F, M A is to open command prompt in Admin mode. :) – Annie Lagang – 2019-06-28T07:44:47.797

3

As of the latest Windows 10 update, Leftium's answer's Shift + Menu, W method no longer works. However, a small modification can present a workaround, albeit with a few more keystrokes.

The problem is that Command Prompt is no longer available in the Extended Right-Click Menu. Instead, you now have Windows Powershell.

Shift + Menu, S opens up Windows Powershell in the target folder. Once in Windows Powershell, type cmd then press Enter.

This will give you access to Command Prompt within Windows Powershell.

P.S.

Ashwin Nanjappa's method of Ctrl + L, type cmd then press Enter works. However, it is elegant only if you do not intend to return to the Windows Explorer window to continue navigating among directories. Unfortunately the method brings your cursor in Windows Explorer away from the main window and requires a number of Tab keystrokes to get it back to where you can navigate folders using the arrow keys. This can be frustrating as there is limited visual confirmation when you are pressing those Tab keystrokes.

Whereas Windows Powershell does work in most ways identically to Command Prompt, I have encountered at least one case in which Windows Powershell was erroneously misreading my @tags (when I was generating javadocs) and not producing the desired result. By typing cmd then Enter within Windows Powershell, you can use Command Prompt instead which overcomes such issues.

Qladstone

Posted 2010-10-31T05:54:15.220

Reputation: 31

2

Easiest way is to goto the windows explorer address bar and type in cmd, it wil lopen the command prompt immediately from that location.

Syed. A

Posted 2010-10-31T05:54:15.220

Reputation: 21

Please read the question again carefully. Your answer does not answer the original question, which asks for a keyboard shortcut. – DavidPostill – 2016-06-03T09:58:52.557

1

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

MagTun

Posted 2010-10-31T05:54:15.220

Reputation: 746

1

AutoHotKey script to open command prompt using @Ashwin's method

Open Powershell console using Win P

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

Open command prompt using Win C

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

iraSenthil

Posted 2010-10-31T05:54:15.220

Reputation: 1 203

I tried this but it doesn't open the cmd in the open folder but in system32 – MagTun – 2019-06-19T10:59:58.037

0

How about to use the PowerShell OpenHere module?

Run PowerShell with elevated permissions and type:

Install-Module OpenHere
Set-OpenHereShortcut -ShortcutType:CMD

Disclaimer:

I'm a developer of this module.

KUTlime

Posted 2010-10-31T05:54:15.220

Reputation: 1

0

If you are using a german languaged Windows version you can do this:

Press Alt+D,E

Alt+D opens a menu where you can select a few other things besides the cmd

foobarbaz

Posted 2010-10-31T05:54:15.220

Reputation: 11

Alt+D select the Address Bar, not a menu – Canadian Luke – 2015-07-29T18:03:02.370

Seems to only work on German languaged Windows versions – foobarbaz – 2015-07-29T22:55:47.060

Edit your answer then I can remove the down vote – Canadian Luke – 2015-07-29T22:58:48.120

Alt+D works in English Windows. An alternative shortcut is Ctrl+L. A similar but not equivalent solution is F4 – phuclv – 2020-01-24T15:32:50.073

-1

For AHK, following is my binding:

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

This does not open current folder, but it is handy.

Teoman shipahi

Posted 2010-10-31T05:54:15.220

Reputation: 129