啓動 Windows 命令交互解釋器實例。
另請參閱: color elevate PowerShell runAs setlocal
cmd /?
基本語法
CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF] [[/S] [/C | /K] string]
參數 | EN 解釋 | 中文翻譯 | 備注 |
---|---|---|---|
/A | Causes the output of internal commands to a pipe or file to be ANSI | 把到管道 (或文件) 的內部命令,輸齣為 ANSI | |
/C | Carries out the command specified by string and then terminates | 執行由字符串指定的命令,然後終止 | |
/D | Disable execution of AutoRun commands from registry | 禁止從注冊錶執行 AutoRun 命令 | |
/E:OFF | Disable command extensions | 禁用命令擴展 | |
/E:ON | Enable command extensions | 啓用命令擴展 | |
/F:OFF | Disable file and directory name completion characters | 禁用文件和目錄名稱的字符補全 | |
/F:ON | Enable file and directory name completion characters | 啓用文件和目錄名稱的字符補全 | |
/K | Carries out the command specified by string but remains | 執行由字符串指定的命令,但保留 | |
/Q | Turns echo off | 關閉迴顯 | |
/S | Modifies the treatment of string after /C or /K | 修改 /C (或 /K) 之後的字符串處理 | |
/T:fg | Sets the foreground/background colors (see COLOR /? for more info) | 設置前颱/背景顔色 (見 COLOR /? 瞭解更多信息) | |
/U | Causes the output of internal commands to a pipe or file to be Unicode | 把管道 (或文件) 的內部命令, 輸齣為 Unicode | |
/V:OFF | Disable delayed environment expansion. | 禁用延遲的環境擴展。 | |
/V:ON |
Enable delayed environment variable expansion using ! as the delimiter. For example, /V:ON would allow !var! to expand the variable var at execution time. The var syntax expands variables at input time, which is quite a different thing when inside of a FOR loop. |
使用 ! 作為分隔符,啓用延遲的環境變量擴展。 例如,/V:ON 允許 !var! 在執行時擴展變量 var。 var 語法在輸入時擴展變量, 這在 FOR 循環中是完全不同的事情。 |
注意:
可接受通過命令分隔符 && 分隔多個命令,若字符串被引號包圍。
此外,由於兼容性原因,/X 等同 /E:ON,/Y 等同 /E:OFF,/R 等同 /C。 任何其他開關會被忽略。
若 /C (或 /K) 被指定,則會把開關後的命令行剩餘部分作為命令行進行處理,其中,會使用以下邏輯處理雙引號字符:
1. 若滿足以下所有條件,則會保留命令行引號字符:
- 沒有 /S 開關
- 正好 2 引號字符
- 在 2 引號字符之間沒有特殊字符 &<>()@^|
- 在 2 引號字符之間有一個或多個空格字符
- 在 2 引號字符之間的字符串是可執行文件的名稱
2. 否則,舊行為是看首字符是否為引號字符, 若是,剝離前導字符並移除命令行最後引號字符, 保留最後引號字符後的所有文本。
若 /D 未在命令行中被指定,則當 CMD.EXE 啓動時, 它會尋找以下 REG_SZ/REG_EXPAND_SZ 注冊錶變量, 若存在其中一個或兩個,則會先執行它們。
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
和/或
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
默認情況下,命令擴展是啓用的。 還可禁用特定援引的擴展名,通過使用 /E:OFF 開關。
可在機器上和/或用戶登錄會話中啓用或禁用 CMD.EXE 所有援引的擴展, 通過使用 REGEDIT.EXE 在注冊錶中把以下一個或兩個 REG_DWORD 值:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensions
和/或
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions
設為 0x1 或 0x0。 用戶特定設置優先於機器設置。 命令行開關優先於注冊錶設置。
在批處理文件中,SETLOCAL ENABLEEXTENSIONS 或 DISABLEEXTENSIONS 自變量優先於 /E:ON 或/E:OFF 開關。 見 SETLOCAL /? 瞭解細節。
命令擴展涉及對以下命令的更改和/或添加:
DEL 或 ERASE
COLOR CD 或 CHDIR
MD 或 MKDIR
PROMPT
PUSHD
POPD
SET
SETLOCAL ENDLOCAL
IF
FOR
CALL
SHIFT
GOTO
START (還包括對外部命令援引的更改)
ASSOC
FTYPE
要獲取特定細節,請鍵入 commandname /? 查看。
默認情況下,延遲的環境變量擴展不被啓用。
采用 /V:ON 或 /V:OFF 開關能啓用或禁用 CMD.EXE 特定援引的延遲環境變量擴展。
可在機器上和/或用戶登錄會話中啓用或禁用 CMD.EXE 所有援引的延遲擴展, 通過使用 REGEDIT.EXE 在注冊錶中把以下一個或兩個 REG_DWORD 值:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\DelayedExpansion
和/或
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\DelayedExpansion
設為 0x1 或 0x0。 用戶特定設置優先於機器設置。 命令行開關優先於注冊錶設置。
在批處理文件中,SETLOCAL ENABLEDELAYEDEXPANSION 或 DISABLEDELAYEDEXPANSION 自變量優先於 /V:ON 或 /V:OFF 開關。 見 SETLOCAL /? 瞭解細節。
若延遲的環境變量擴展被啓用, 則驚嘆號字符在執行時間可用於代入環境變量的值。
采用 /F:ON 或 /F:OFF 開關能啓用或禁用 CMD.EXE 特定援引的文件名補全。
可在機器上和/或用戶登錄會話中啓用或禁用 CMD.EXE 所有援引的補全, 通過使用 REGEDIT.EXE 在注冊錶中把以下一個或兩個 REG_DWORD 值:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar
和/或
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar
設為帶有用於特定功能控製字符的十六進製值 (例如,0x4 是 Ctrl-D,0x6 是 Ctrl-F)。 用戶特定設置優先於機器設置。 命令行開關優先於注冊錶設置。
若采用 /F:ON 開關啓用補全, 使用的兩個控製字符是 Ctrl-D (用於目錄名補全) 和 Ctrl-F (用於文件名補全)。
要在注冊錶中禁用特定補全字符,請使用 (0x20) 空格值 (因為它不是有效控製字符)。
當鍵入 2 控製字符之一時, 補全會被援引。 補全函數將獲取光標左側的路徑字符串 (若獲取字符為空,則追加通配符), 並構建匹配路徑列錶。
接著顯示第一匹配路徑。 若沒有匹配的路徑,則會發齣嘟嘟聲並離開顯示。 此後,重復按下相同控製字符將循環遍曆匹配路徑列錶。 按住 Shift 鍵加控製字符將嚮後遍曆列錶。
若以任何方式編輯行並再次按下控製字符,保存的匹配路徑列錶會被丟棄,並生成一個新的。 若在文件名和目錄名補全之間切換,會同樣發生。
2 控製字符之間的唯一區彆是文件補全字符匹配文件和目錄名兩者,而目錄補全字符隻匹配目錄名。 若文件補全被用於任何內置目錄命令 (CD MD 或 RD),則假定為目錄補全。
補全代碼通過在匹配路徑周圍放置引號,以正確處理包含空格或其他特殊字符的文件名。 還有,若備份,則會從行中援引補全,在援引補全點光標右邊的文本會被丟棄。
需要引號的特殊字符:
空格
&()[]{}^=;!'+,`~
功能 | 命令 | 解釋 | 備注 |
---|---|---|---|
UAC | Start-Process CMD -Verb runAs | 在 PowerShell 以管理員權限啓動 CMD | 不用輸入管理員口令 |
幫助 | cmd /? | 展示幫助信息 |
以下為 UAC.bat 文件內容,雙擊能以管理員身份運行 wmic 獲取 CPU 溫度。
@ echo off %1 %2 mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :st","","runas",0)(window.close)&goto :eof :st wmic /namespace:\\root\wmi PATH MSAcpi_ThermalZoneTemperature get CriticalTripPoint, CurrentTemperature
版權聲明: 本文為獨傢原創稿件,版權歸 樂數軟件 ,未經許可不得轉載。