ChatGPT解决这个技术问题 Extra ChatGPT

How can I open a cmd window in a specific location?

How can I open a cmd window in a specific location without having to navigate all the way to the directory I want?

Reference: documentation provided by Microsoft on "cmd /?" Create this registry entry: Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\
String Name: AutoRun String Value: CD [/D] {specific location} This is a command that "cmd.exe" runs every time you launch it. HTH, Marcelo Finkielsztein

s
supermitch

This might be what you want:

cmd /K "cd C:\Windows\"

Note that in order to change drive letters, you need to use cd /d. For example:

C:\Windows\System32\cmd.exe /K "cd /d H:\Python\"

(documentation)


Thanks ... Even shorter from GUI : WinLogo + R , type : cmd /c "start /max cmd /K "cd C:\Windows\""
On windows 7 you can save yourself a couple of keystrokes and use a lower case k and leave out the double quotes when your pathname has no space
Want to start with a clean prompt without the initial cd command shown? Append &cls to the string like so: cmd.exe /K "cd /d H:\Python\&cls" (documentation) And save this line into a jumpstart.bat file for easy access by just double clicking it.
Why has this "answer" received so many up votes? Granted it answers the "letter" of the question, but not the "spirit"! This requires one to "...to navigate all the way to the directory I want." Ok, perhaps not "navigate", but rather "type", which is hardly a shortcut!
The reason this answer has received so many upvotes is that it works for a shortcut. I keep a collection of shortcuts on my taskbar that each open a command prompt window in various project folders. In Windows 8, if you create a shortcut to start an elevated command prompt window, it ignores the "Start in" folder. The workaround is to place the following in the "Target" field (not the "Start in" field) %windir%\system32\cmd.exe /k cd "\My Projects".
M
Michael Ratanapintha

If you have Windows Vista or later, right-click on the folder icon in Explorer while holding the Shift key, and then click on the "Open command window here" or "Open PowerShell window here" context menu option.

If you're already in the folder you want, you can do one of the following:

[only Win8+] Click the Explorer Ribbon's File button, then click on "Open command window here" or "Open PowerShell window here".

Shift-right-click on the background of the Explorer window, then click on "Open command window here" or "Open PowerShell window here". (recommended by Kate in the comments)

[only Vista or Win7] Hold down Shift when opening the Explorer File menu, then click on "Open command window here". If you can't see the menu bar, open the File menu by pressing Alt-Shift-F - Alt-F to open the File menu, plus Shift.

For Windows XP, use the PowerToy mentioned by dF to get the same function.


I'm running Server 2008 here and I don't get an "Open Command Window Here" context menu option when I Shift+right-click on a directory... ...doesn't work on Vista x64 either.
These work in Windows 7 and Server 2008 R2 also. Make sure you right click in the background and not on a file.
Works awesome in Windows 7, for me this is the best, shortest and most preferred way. Thanks @Michael
Waaat? Holding shift enables a different context menu? Is this global behavior? Why isn't that option included in the normal context menu?
Only shows me Windows Shell in Windows 10... suggestions?
R
ROMANIA_engineer

Assuming that in File Explorer you have opened the target directory/folder, do this:

Click on address bar, alternatively press Alt+D Now when address bar is highlighted, type cmd in the bar. Press Enter key

You will notice that command prompt from that folder


This is a cool trick. But do you know of a way to do this with an elevated command prompt?
@smead Click on the folder, click on the File menu of Explorer, then click on then arrow next to 'Open command prompt' . Then you will see an option to open cmd as Admin
@san1deep2set3hi I don't get an arrow next to Open command prompt. I'm in Win7 Pro, maybe that was added in a later OS?
this is nice idea and works, with just one exception: if it has sub folder named cmd
Windows 10 doesn't include the "hold shift, right click" option so this is the only valid way I see to do this on W10.
P
Panki

From Windows 7 up to some versions of Windows 10, it is very simple to open a command prompt anywhere you wish, without navigation using command "cd". Try the following one. Click the mouse's right button by holding Shift key .

https://i.stack.imgur.com/VxAHr.png

It will produce an option like this. Then simply select the "Open command window here " option. The latest versions of Windows 10 have replaced this feature with "Open Powershell here".


Strangely I don't have this item
Me too, so I'm going to take a guess this is only available in Enterprise versions of Windows 7+ (Not home)
It shows only Power Shell option when i press Shift + mouse's right button
That's cool , like real programmer !
A
Aaron John Sabu

Try out this "PowerToy" from Microsoft:

Open Command Window Here This PowerToy adds an "Open Command Window Here" context menu option on file system folders, giving you a quick way to open a command window (cmd.exe) pointing at the selected folder.

EDIT : This software will not work on any version of Windows apart from Windows XP.

https://i.stack.imgur.com/sdXWW.png


I think this answer combined with Michael Ratanapintha's answer about using shift-right click in vista and 2008 answers this question fully.
The link in the answer in no longer valid, but I believe it points to this download: go.microsoft.com/fwlink/?LinkId=211471
it is valid for windows xp only
d
desmati

On Windows Vista, Windows 7 and Windows 10 simply hold down the Shift key and right-click on a folder.

The context menu will contain an entry titled: "Open command window here"

Update: Type "cmd" in the address bar of Explorer and press enter

https://i.stack.imgur.com/irrxh.png

Update 2: In windows 10, go to file menu and select "Open Windows PowerShell". There is an option for running as administrator.

https://i.stack.imgur.com/3GAxb.png


I had this working on Windows 7 but in on my new laptop with Windows 10 it is not present in the popup menu.
J
Jason Punyon

Use the /K switch. For example

cmd /K "cd /d c:\WINDOWS\"

Will create a cmd window at the C:\Windows directory


G
Guillermo

Just write cmd in the address bar, it will open in the current folder.


V
Vinay

In windows go to folder location in file explorer remove path and type cmd and press enter. and path will open in cmd.


T
TiagoLr

Also, here is a shortcut to open a console in any windows folder:

Open any folder on windows explorer.

Press Alt + D to focus the adress bar

type cmd and press enter

Very practical shortcut.


this is nice idea and works, with just one exception: if it has sub folder named cmd
A
Abhishek Shrestha

In Windows 8, you can click the address bar and type "cmd" (without quotes) and hit enter. This will open the cmd window in the current path.


Unless you have a batch/command script called cmd.bat or cmd.cmd, in which case it will execute that file. LOL
m
metasim

Easiest way is to goto the address bar of the Windows Explorer and type cmd there. It will automatically open the command prompt window for you.


The question was about how to open a prompt in a specific directory. This doesn't answer the question.
this is nice idea and works, with just one exception: if it has sub folder named cmd.
@solarissmoke this actually does answer the question: navigate to the directory in Explorer, then type cmd in the directory URL at the top of the explorer window. It opens cmd right at the window's directory. No navigation in the terminal what so ever. Just to make sure everyone is on the same page: Windows Explorer is not the same thing as Internet Explorer, the Run Dialog, or the Task Manager.
A
Arman Fatahi

If you are starting cmd from taskbar, this is what you need to do:

right click --> rightclick on Command Prompt --> Properties

https://i.stack.imgur.com/NMFBt.png

Then in the properties window change the value of Start in:

https://i.stack.imgur.com/1oI8t.png

This solution doesn't work for opening command prompt as administrator


"Start in:" location under my Windows 10 does not work if it's an administrative prompt. -> ALWAYS opens in system32 for me.
@bshea You are right, I tried and got the same results. So the solution can only be used for non-admin command prompts.
Yep.. was driving me nuts. use pushd per stackoverflow.com/a/45563746/503621 - is best/easiest can find for admin prompt location setting..
s
simon

Create a shortcut and edit the "Start In" property of the shortcut to the directory you want the cmd.exe to start in.


As also mentioned in comments to other answers, this works with non-admin execution only. As also mentioned herein, the /k "pushd <dir>" solution works with both.
C
Codism

I just saw this question and cannot help to post my AutoHotkey script for cmd on Windows XP. You can spot the hot keys in the script. The nice thing is when your current windows is Explorer, the cmd will open in the path showing in the address bar.

I keep this script in a folder where I store all green tools (including AutoHotkey). For a new machine, I just copy the folder, double click the script to associate .ahk with AutoHotkey and create a shortcut in my startup folder. It is faster than installing PowerToys.

; Get working folder
GetWorkingFolder() {
    if WinActive("ahk_class ExploreWClass") or WinActive("ahk_class CabinetWClass") {
        ControlGetText, path, Edit1
        return %path%
    } else if WinActive("FreeCommander") {
        Send, {CTRLDOWN}{ALTDOWN}{INS}{ALTUP}{CTRLUP}
        Sleep, 100
        return clipboard
    } else {
        return "C:\"
    }
}

#IfWinActive,

#c::
    path := GetWorkingFolder()
    Run, %ComSpec%, %path%
    return

; PowerShell
#+C::
    path := GetWorkingFolder()
    Run, %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe, %path%
    return

#^c::
    Run, %ComSpec%, %temp%
    return

#!c::
    path := GetWorkingFolder()
    Run, %comspec% /k "%VS90COMNTOOLS%vsvars32.bat", %path%
    return

; irb
#!b::
    path := GetWorkingFolder()
    Run, c:\cygwin\bin\ruby /usr/bin/irb, %path%
    return

; Bash
#b::
    path := GetWorkingFolder()
    Run, bash --login, %path%
    return

; Paste in console
+INS::
    if WinActive("ahk_class ConsoleWindowClass") {
        WinGetPos, x, y, w, h, A
        MouseGetPos, mx, my
        ;MsgBox x=%x% y=%y% w=%w% h=%h% mx=%mx% my=%my%
        if (mx < 10)
            mx = 10
        else if (mx > w - 30)
            mx := w - 30

        if (my < 40)
            my = 40
        else if (my > h)
            my := h - 10

        MouseClick, right, mx, my
    }
    return

For anyone who is interested, you can find this script at rwin on github


It's now part of my windows tool set, you can find it here: code.google.com/p/rwintools. The script has also been updated to support windows 7. I am planning to add more document recently.
r
rundekugel

Update: This is built into Windows now. See this answer.

The XP powertoy is a good option, but I thought I'd post another, in case you'd like to "roll your own". Create a text file, name it anything.reg, paste in the code below, save it, then double-click on it to add it to the registry (or just add the info to the registry manually if you understand what's going on in this .reg file).

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Folder\shell\Command_Prompt_Here...]
@="Command Prompt Here..."

[HKEY_CLASSES_ROOT\Folder\shell\Command_Prompt_Here...\command]
@="cmd.exe \"%1\""

Update: After an Windows-update, Win10 removed the cmd-here feature. To reactivate it you've to use:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\shell\cmd]
@="@shell32.dll,-8506"
"Extended"=""
"NoWorkingDirectory"=""
"ShowBasedOnVelocityId"=dword:00639bc8

[HKEY_CLASSES_ROOT\Directory\shell\cmd\command]
@="cmd.exe /s /k pushd \"%V\""

The entry ShowBasedOnVelocityId is mandatory


F
FocusedWolf

This will add entries to the context-menu to launch a command window that is automatically navigated to the directory you clicked.

Usage:

Right-click a folder icon (or the empty background area inside an already open folder)
and click either "Open in Terminal" or "Open in Terminal (Admin)".

You can also right click files to execute them with a command window.
When the file is done running you are left with a command window that is navigated to the files directory.

https://i.stack.imgur.com/buU1K.png

Open_in_Terminal.reg

Windows Registry Editor Version 5.00

; Admin versions.

; Right click on a folder in a directory.
[HKEY_CLASSES_ROOT\Directory\shell\OpenCommandWindowHereAsAdministrator]
@="Open in Terminal (Admin)"
"Icon"="cmd.exe"
"HasLUAShield"=""
"Position"="middle"
[HKEY_CLASSES_ROOT\Directory\shell\OpenCommandWindowHereAsAdministrator\command]
@="cmd.exe /c powershell.exe -Command \"Start-Process cmd -Verb runas -ArgumentList '/k pushd \"%1\"'\""

; Right click on nothing in a directory, i.e. the "background" of the directory.
[HKEY_CLASSES_ROOT\Directory\Background\shell\OpenCommandWindowHereAsAdministrator]
@="Open in Terminal (Admin)"
"Icon"="cmd.exe"
"HasLUAShield"=""
"Position"="middle"
[HKEY_CLASSES_ROOT\Directory\Background\shell\OpenCommandWindowHereAsAdministrator\command]
@="cmd.exe /c powershell.exe -Command \"Start-Process cmd -Verb runas -ArgumentList '/k pushd \"%V\"'\""

; Right click on nothing in a library directory, i.e. the "background" of the library directory.
[HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\OpenCommandWindowHereAsAdministrator]
@="Open in Terminal (Admin)"
"Icon"="cmd.exe"
"HasLUAShield"=""
"Position"="middle"
[HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\OpenCommandWindowHereAsAdministrator\command]
@="cmd.exe /c powershell.exe -Command \"Start-Process cmd -Verb runas -ArgumentList '/k pushd \"%V\"'\""

; Right click on a file in a directory.
[HKEY_CLASSES_ROOT\*\shell\OpenWithCommandWindowAsAdministrator]
@="Open in Terminal (Admin)"
"Icon"="cmd.exe"
"HasLUAShield"=""
"Position"="middle"
[HKEY_CLASSES_ROOT\*\shell\OpenWithCommandWindowAsAdministrator\command]
@="cmd.exe /c powershell.exe -Command \"Start-Process cmd -Verb runas -ArgumentList '/k pushd \\\"%W \\\" && \\\"%1\\\"'\""

; Non-Admin versions.

; Right click on a folder in a directory.
[HKEY_CLASSES_ROOT\Directory\shell\OpenCommandWindowHere]
@="Open in Terminal"
"Icon"="cmd.exe"
"Position"="middle"
[HKEY_CLASSES_ROOT\Directory\shell\OpenCommandWindowHere\command]
@="cmd.exe /k pushd \"%1\""

; Right click on nothing in a directory, i.e. the "background" of the directory.
[HKEY_CLASSES_ROOT\Directory\Background\shell\OpenCommandWindowHere]
@="Open in Terminal"
"Icon"="cmd.exe"
"Position"="middle"
[HKEY_CLASSES_ROOT\Directory\Background\shell\OpenCommandWindowHere\command]
@="cmd.exe /k pushd \"%V\""

; Right click on nothing in a library directory, i.e. the "background" of the library directory.
[HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\OpenCommandWindowHere]
@="Open in Terminal"
"Icon"="cmd.exe"
"Position"="middle"
[HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\OpenCommandWindowHere\command]
@="cmd.exe /k pushd \"%V\""

; Right click on a file in a directory.
[HKEY_CLASSES_ROOT\*\shell\OpenWithCommandWindow]
@="Open in Terminal"
"Icon"="cmd.exe"
"Position"="middle"
[HKEY_CLASSES_ROOT\*\shell\OpenWithCommandWindow\command]
@="cmd.exe /k pushd \"%W\" && \"%1\""

This took a lot of effort to make so if you're feeling generous then feel free to send a paypal donation to help me overcome the PTSD of debugging and testing it :)

An uninstaller if you need one:

Open_in_Terminal_Remover.reg

Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\Directory\shell\OpenCommandWindowHereAsAdministrator]
[-HKEY_CLASSES_ROOT\Directory\Background\shell\OpenCommandWindowHereAsAdministrator]
[-HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\OpenCommandWindowHereAsAdministrator]
[-HKEY_CLASSES_ROOT\*\shell\OpenWithCommandWindowAsAdministrator]
[-HKEY_CLASSES_ROOT\Directory\shell\OpenCommandWindowHere]
[-HKEY_CLASSES_ROOT\Directory\Background\shell\OpenCommandWindowHere]
[-HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\OpenCommandWindowHere]
[-HKEY_CLASSES_ROOT\*\shell\OpenWithCommandWindow]

Works for right-click on Desktop, dir on Desktop, Sidebar and dir or white-space in File Explorer - thank you! Very clean soln
M
Mendi Barel

pushd command sets the current folder. so:

cmd /k "pushd D:\Music"

Best/easiest answer I've found if you are opening a win10 administrative cmd (shortcut) prompt. Normally, admin prompt will force "start in" location to C:\Windows\system32.. no matter the 'start in' location you set.
Good tip. I use alternative 'C:\Windows\System32\cmd.exe cmd /K "cd /d D:\Bla"'.
T
TomCat

For windows 7 or later, inside the target folder address bar just type cmd. That is it. It will open up command prompt with path set to your present directory.


this is nice idea and works, with just one exception: if it has sub folder named cmd
Q
Quantum Dreamer

This answer is for windows 10.

https://i.stack.imgur.com/1bcj5.png

and

https://i.stack.imgur.com/wKNKx.png


This doesn't work if you need elevated rights. See superuser.com/questions/1067901/…
IMHO this is the best answer as it requires the least amount of software to reach the goal.
o
ofir_aghai

In File Explorer, press and hold the Shift key, then right click or press and hold on a folder or drive that you want to open the command prompt at that location for, and click/tap on Open Command Prompt Here option.


S
Srinivas P

I see that there are multiple answers, some are quite complex :) , strange to see them. You just have to open any windows folder window, navigate to your desired folder and focus on address bar and enter "cmd" and press enter, you would be presented with new command prompt window directly with the folder path or location that we already navigated in windows folder window. In case you want to see these steps with clear images you can check out

how to open command prompt in a specific folder directly


J
JasonXA

Make the shortcut to cmd.exe with params /S /K pushd "C:\YOUR FOLDER\"


P
Pankaj Shrivastava

For windows : Select the folder which you want to open in command prompt - After selection, Keeping the 'Shift key' pressed. Right click there and choose option "open command window here"


v
vidy

In Windows go to the specific folder, then click on the file explorer path and remove it then type cmd and click enter.. and in cmd your specific folder with its path will open..


P
Petr Novotny

In Windows Explorer - shift + right mouse click above folder "Open command window here" option show up in the menu. Or in language of your Windows version.


J
Julien Jm

<===||==========> On Windows 10 <==========||===>

Assuming that in File Explorer you have opened the target directory/folder, do this :

Click on address bar, alternatively press Alt + A Now when address bar is highlighted, type cmd in the bar. Press Enter key

For a powershell window :

Just press Alt + f + s + a


M
Martin Brown

There is a simplier way I know. Find cmd.exe in start menu and send it to Desktop as shortcut. Then right-click it and choose properties. You will see "Start in" box under the "Target". Change that directory as whatever you'd like to set. Click OK and start cmd.exe which is in your Desktop. In my opinion, it's a very easy and certain solution :)


j
jhasse

This program always opens cmd.exe in the current path of your Explorer: https://github.com/jhasse/smart_cmd

You can also pin it to your taskbar and then use WindowsKey+[1-0] as a keyboard shortcut.


t
totymedli

If you use Total Commander there is a field in the bottom for this. It shows the active directory you are currently in and will run the entered command in that directory.

https://i.stack.imgur.com/naGaS.png