Where are the default settings saved for the Command prompt defaults?
Where are the default settings saved for the Command Prompt defaults? Are they stored in the registry somewhere, or in a file?
I would love to make a .reg
file to set my default preferences when logging into a machine for the first time.
I'm talking about the default application settings: QuickEdit mode, buffer size, text color, etc.
Under HKEY_CURRENT_USER\Console
there are some default settings for all consoles and subkeys with individual settings for console programs. You might want to take a look at these settings, especially at QuickEdit
, ScreenBufferSize
, ScreenColors
, etc.
Updated Answer in response to edited question
I suggest you create a shortcut for CMD.EXE on your desktop, and edit the properties to get the settings you want. Then copy the shortcut to a portable device like a USB thumb drive, or else a network folder. You should be able to launch the shortcut from any computer and get your desired settings.
Original answer dealing with entirely different settings
I'm aware of four settings that may be controlled by the registry:
- Auto Run
- Extensions
- Delayed Expansion
- File Name Completion
The registry settings are documented in the built in help, accessed from the command line by typing HELP CMD
or CMD /?
Here is an excerpt of the relevant help:
If /D was NOT specified on the command line, then when CMD.EXE starts, it
looks for the following REG_SZ/REG_EXPAND_SZ registry variables, and if
either or both are present, they are executed first.
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
and/or
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
Command Extensions are enabled by default. You may also disable
extensions for a particular invocation by using the /E:OFF switch. You
can enable or disable extensions for all invocations of CMD.EXE on a
machine and/or user logon session by setting either or both of the
following REG_DWORD values in the registry using REGEDIT.EXE:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensio
and/or
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtension
to either 0x1 or 0x0. The user specific setting takes precedence over
the machine setting. The command line switches take precedence over the
registry settings.
In a batch file, the SETLOCAL ENABLEEXTENSIONS or DISABLEEXTENSIONS argume
takes precedence over the /E:ON or /E:OFF switch. See SETLOCAL /? for deta
The command extensions involve changes and/or additions to the following
commands:
DEL or ERASE
COLOR
CD or CHDIR
MD or MKDIR
PROMPT
PUSHD
POPD
SET
SETLOCAL
ENDLOCAL
IF
FOR
CALL
SHIFT
GOTO
START (also includes changes to external command invocation)
ASSOC
FTYPE
To get specific details, type commandname /? to view the specifics.
Delayed environment variable expansion is NOT enabled by default. You
can enable or disable delayed environment variable expansion for a
particular invocation of CMD.EXE with the /V:ON or /V:OFF switch. You
can enable or disable delayed expansion for all invocations of CMD.EXE on
machine and/or user logon session by setting either or both of the
following REG_DWORD values in the registry using REGEDIT.EXE:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\DelayedExpansi
and/or
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\DelayedExpansio
to either 0x1 or 0x0. The user specific setting takes precedence over
the machine setting. The command line switches take precedence over the
registry settings.
In a batch file the SETLOCAL ENABLEDELAYEDEXPANSION or DISABLEDELAYEDEXPAN
arguments takes precedence over the /V:ON or /V:OFF switch. See SETLOCAL /
for details.
If delayed environment variable expansion is enabled, then the exclamation
character can be used to substitute the value of an environment variable
at execution time.
You can enable or disable file name completion for a particular
invocation of CMD.EXE with the /F:ON or /F:OFF switch. You can enable
or disable completion for all invocations of CMD.EXE on a machine and/or
user logon session by setting either or both of the following REG_DWORD
values in the registry using REGEDIT.EXE:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletion
and/or
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionC
with the hex value of a control character to use for a particular
function (e.g. 0x4 is Ctrl-D and 0x6 is Ctrl-F). The user specific
settings take precedence over the machine settings. The command line
switches take precedence over the registry settings.
If completion is enabled with the /F:ON switch, the two control
characters used are Ctrl-D for directory name completion and Ctrl-F for
file name completion. To disable a particular completion character in
the registry, use the value for space (0x20) as it is not a valid
control character.
Completion is invoked when you type either of the two control
characters. The completion function takes the path string to the left
of the cursor appends a wild card character to it if none is already
present and builds up a list of paths that match. It then displays the
first matching path. If no paths match, it just beeps and leaves the
display alone. Thereafter, repeated pressing of the same control
character will cycle through the list of matching paths. Pressing the
Shift key with the control character will move through the list
backwards. If you edit the line in any way and press the control
character again, the saved list of matching paths is discarded and a new
one generated. The same occurs if you switch between file and directory
name completion. The only difference between the two control characters
is the file completion character matches both file and directory names,
while the directory completion character only matches directory names.
If file completion is used on any of the built in directory commands
(CD, MD or RD) then directory completion is assumed.
The completion code deals correctly with file names that contain spaces
or other special characters by placing quotes around the matching path.
Also, if you back up, then invoke completion from within a line, the
text to the right of the cursor at the point completion was invoked is
discarded.
The special characters that require quotes are:
<space>
&()[]{}^=;!'+,`~
This is what I did for Windows 10:
-
Paste this into Windows Explorer exactly as written:
%LOCALAPPDATA%\Microsoft\Windows\WinX\Group3\
Right click both the "Command Prompt" shortcuts and select "properties"
-
Editing these tabs will change the default settings for the command prompt:
- font
- Layout
- Colors
- options
Remember the settings need to be changed for both shortcuts. I'm not sure why there are two. :/