導航:首頁 > 使用方法 > cmd的使用方法

cmd的使用方法

發布時間:2022-10-09 16:20:12

Ⅰ 求CMD的用法

CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF]
[[/S] [/C | /K] string]
其中:CMD是不可缺少的!
/C 執行字元串指定的命令然後終斷
/K 執行字元串指定的命令但保留
/S 在 /C 或 /K 後修改字元串處理(見下)
/Q 關閉回應
/D 從注冊表中停用執行 AutoRun 命令(見下)
/A 使向內部管道或文件命令的輸出成為 ANSI
/U 使向內部管道或文件命令的輸出成為 Unicode
/T:fg 設置前景/背景顏色(詳細信息,請見 COLOR /?)
/E:ON 啟用命令擴展(見下)
/E:OFF 停用命令擴展(見下)
/F:ON 啟用文件和目錄名稱完成字元 (見下)
/F:OFF 停用文件和目錄名稱完成字元(見下)
/V:ON 將 ! 作為定界符啟動延緩環境變數擴展。如: /V:ON 會允許 !var! 在執行時允許 !var! 擴展變數 var。var 語法在輸入時擴展變數,這與在一個 FOR 循環內不同。
/V:OFF 停用延緩的環境擴展。
請注意,如果字元串有引號,可以接受用命令分隔符 '&&' 隔開的多個命令。並且,由於兼容原因,/X 與 /E:ON 相同,/Y 與/E:OFF 相同,並且 /R 與 /C 相同。忽略任何其他命令行開關。如果指定了 /C 或 /K,命令行開關後的命令行其餘部分將作為命令行處理;在這種情況下,會使用下列邏輯處理引號字元("):

1.如果符合下列所有條件,那麼在命令行上的引號字元將被
保留:
- 不帶 /S 命令行開關
- 整整兩個引號字元
- 在兩個引號字元之間沒有特殊字元,特殊字元為下列中的
一個: <>()@^|
- 在兩個引號字元之間有至少一個空白字元
- 在兩個引號字元之間有至少一個可執行文件的名稱。

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 所有調用的擴展,這要通過設置使用REGEDT32.EXE 的注冊表中的一個或兩個 REG_DWORD 值:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensions

和/或

HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions

到 0x1 或 0x0。用戶特定設置比機器設置有優先權。命令行開關比注冊表設置有優先權。以上是對於基本命令的介紹,下麵包含的是命令行擴展部分。延遲變數環境擴展不按默認值啟用。您可以用/V:ON 或 /V:OFF
命令行開關,為 CMD.EXE 的某個調用而啟用或停用延遲環境變數擴充。

您可以在機器上和/或用戶登錄會話上啟用或停用 CMD.EXE 所有調用的完成,這要通過設置使用 REGEDT32.EXE 的注冊表中的一個或兩個 REG_DWORD 值:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\DelayedEXPansion

和/或

HKEY_CURRENT_USER\Software\Microsoft\Command Processor\DelayedEXPansion

到 0x1 或 0x0。用戶特定設置比機器設置有優先權。命令行開關比注冊表設置有優先權。
如果延遲環境變數擴充被啟用,驚嘆號字元可在執行時間,被用來代替一個環境變數的數值。文件和目錄名完成不按默認值啟用。您可以用 /F:ON 或 /F:OFF命令行開關,為 CMD.EXE 的某個調用而啟用或停用文件名完成。 您可以在機器上和/或用戶登錄會話上啟用或停用 CMD.EXE 所有調用的完成,這要通過設置使用 REGEDT32.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)的數值,因為此字元不是控制字元。

如果鍵入兩個控制字元中的一個,完成會被調用。完成功能將路徑字元串帶到游標的左邊,如果沒有通配符,將通配符附加到左邊,並建立相符的路徑列表。然後,顯示第一個相符的路徑。如果沒有相符的路徑,則發出嘟嘟聲,不影響顯示。之後,重復按同一個控制字元會循環顯示相符路徑的列表。將 Shift 鍵跟控制字元同時按下,會倒著顯示列表。如果對該行進行了任何編輯,並再次按下控制字元,保存的相符路徑的列表會被丟棄,新的會被生成。如果在文件和目錄名完成之間切換,會發生同樣現象。兩個控制字元之間的唯一區別是文件完成字元符合文件和目錄名,而目錄完成字元只符合目錄名。如果文件完成被用於內置式目錄命令(CD、MD 或 RD),就會使用目錄完成。

將引號將相符路徑括起來,完成代碼可以正確處理含有空格或其他特殊字元的文件名。同時,如果備份,然後從行內調用文件完成,完成被調用是位於游標右方的文字會被丟棄。

需要引號的特殊字元是:

&()[]{}^=;!'+,`~
下面是命令行擴展的詳細應用方法介紹:熟悉dos的朋友會發現許多內容和dos相同。
1、DEL 或 ERASE
刪除一個或數個文件。

DEL [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names
ERASE [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names

names 指定一個或數個文件或目錄列表。通配符可被用來
刪除多個文件。如果指定了一個目錄,目錄中的所
有文件都會被刪除。

/P 刪除每一個文件之前提示確認。
/F 強制刪除只讀文件。
/S 從所有子目錄刪除指定文件。
/Q 安靜模式。刪除全局通配符時,不要求確認。
/A 根據屬性選擇要刪除的文件。
attributes R 只讀文件 S 系統文件
H 隱藏文件 A 存檔文件
- 表示「否」的前綴

如果命令擴展名被啟用,DEL 和 ERASE 會如下改變:

/S 開關的顯示句法會顛倒,即只顯示已經刪除的文件,而不顯示找不到的文件。

2、COLOR
設置默認的控制台前景和背景顏色。
COLOR [attr]
attr 指定控制台輸出的顏色屬性
顏色屬性由兩個十六進制數字指定 -- 第一個為背景,第二個則為
前景。每個數字可以為以下任何值之一:
0 = 黑色 8 = 灰色
1 = 藍色 9 = 淡藍色
2 = 綠色 A = 淡綠色
3 = 湖藍色 B = 淡淺綠色
4 = 紅色 C = 淡紅色
5 = 紫色 D = 淡紫色
6 = 黃色 E = 淡黃色
7 = 白色 F = 亮白色
如果沒有給定任何參數,該命令會將顏色還原到 CMD.EXE 啟動時的顏色。這個值來自當前控制台窗口、/T 開關或DefaultColor 注冊表值。
如果用相同的前景和背景顏色來執行 COLOR 命令,COLOR 命令會將 ERRORLEVEL 設置為 1。
例如: "COLOR fc" 在亮白色上產生亮紅色

3、CD 或 CHDIR
顯示當前目錄名或改變當前目錄。
CHDIR [/D] [drive:][path]
CHDIR [..]
CD [/D] [drive:][path]
CD [..]
.. 指定要改成父目錄。
鍵入 CD 驅動器: 顯示指定驅動器中的當前目錄。
不帶參數只鍵入 CD,則顯示當前驅動器和目錄。
使用 /D 命令行開關,除了改變驅動器的當前目錄之外,
還可改變當前驅動器。
如果擴展命令名被啟用,CHDIR 會如下改變:
當前的目錄字元串會被轉換成使用磁碟名上的大小寫。所以,如果磁碟上的大小寫如此,CD C : \TEMP 會將當前目錄設為C:\Temp。
CHDIR 命令不把空格當作分隔符,因此有可能將目錄名改為一個帶有空格但不帶有引號的子目錄名。例如:
cd \Winnt\profiles\username\programs\start menu
與下列相同:
cd "\Winnt\profiles\username\programs\start menu"
在擴展功能停用的情況下,您必須鍵入以上命令。

4、MD 或 MKDIR
創建目錄。
MKDIR [drive:]path
MD [drive:]path
如果命令擴展名被啟用,MKDIR 會如下改變:
如果需要,MKDIR 會在路徑中創建中級目錄。例如: 假設 \a 不存在,那麼:
mkdir \a\b\c\d
與:
mkdir \a
chdir \a
mkdir b
chdir b
mkdir c
chdir c
mkdir d
相同。如果擴展名被停用,則需要鍵入 mkdir \a\b\c\d。

5、PROMPT
更改 cmd.exe 命令提示符。
PROMPT [text]
text 指定新的命令提示符。
提示符可以由普通字元及下列特定代碼組成:
$A & (短 and 符號)
$B | (管道)
$C ( (左括弧)
$D 當前日期
$E Escape code (ASCII 碼 27)
$F ) (右括弧)
$G > (大於符號)
$H Backspace (擦除前一個字元)
$L < (小於符號)
$N 當前驅動器
$P 當前驅動器及路徑
$Q = (等號)
$S (空格)
$T 當前時間
$V Windows XP 版本號
$_ 換行
$$ $ (貨幣符號)

如果命令擴展名被啟用,PROMPT 命令會支持下列格式化字元:
$+ 根據 PUSHD 目錄堆棧的深度,零個或零個以上加號(+)字元;每個被推的層有一個字元。
$M 如果當前驅動器不是網路驅動器,顯示跟當前驅動器號或空字元串有關聯的遠程名。

6、PUSHD
保存當前目錄以供 POPD 命令使用,然後改到指定的目錄。
PUSHD [path | ..]
path 指定要成為當前目錄的目錄。
如果命令擴展名被啟用,除了一般驅動器號和路徑,PUSHD命令還接受網路路徑。如果指定了網路路徑,PUSHD 將創建一個指向指定網路資源的臨時驅動器號,然後再用剛定義的驅動器號改變當前的驅動器和目錄。可以從 Z: 往下分配臨時驅動器號,使用找到的第一個沒有用過的驅動器號。

7、POPD
命令選項到保存在 PUSHD 命令里的目錄。
POPD
如果命令擴展名被啟用,從推目錄堆棧 POPD 驅動器時,POPD命令會刪除 PUSHD 創建的臨時驅動器號。

8、SET
顯示、設置或刪除 cmd.exe 環境變數。
SET [variable=[string]]
variable 指定環境變數名。
string 指定要指派給變數的一系列字元串。
要顯示當前環境變數,鍵入不帶參數的 SET。
如果命令擴展名被啟用,SET 會如下改變:
可僅用一個變數激活 SET 命令,等號或值不顯示所有前綴匹配SET命令已使用的名稱的所有變數的值。例如:
SET P
會顯示所有以字母 P 打頭的變數如果在當前環境中找不到該變數名稱,SET 命令將把 ERRORLEVEL
設置成 1。
SET 命令不允許變數名含有等號。
在 SET 命令中添加了兩個新命令行開關:
SET /A eXPression
SET /P variable=[promptString]
/A 命令行開關指定等號右邊的字元串為被評估的數字表達式。該表達式評估器很簡單並以遞減的優先權順序支持下列操作:
() - 分組
! ~ - - 一元運算符
* / % - 算數運算符
+ - - 算數運算符
<< >> - 邏輯移位
- 按位「與」
^ - 按位「異」
| - 按位「或」
= *= /= %= += -= - 賦值
&= ^= |= <<= >>=
- 表達式分隔符

如果您使用任何邏輯或取余操作符, 您需要將表達式字元串用引號擴起來。在表達式中的任何非數字字元串鍵作為環境變數名稱,這些環境變數名稱的值已在使用前轉換成數字。如果指定了一個環境變數名稱,但未在當前環境中定義,那麼值將被定為零。這使您可以使用環境變數值做計算而不用鍵入那些 % 符號來得到它們的值。如果 SET /A 在命令腳本外的命令行執行的,那麼它顯示該表達式的最後值。該分配的操作符在分配的操作符左邊需要一個環境變數名稱。除十六進制有 0x 前綴,八進制有 0 前綴的,數字值為十進位數字。因此, 0x12 與 18 和 022相同。請注意八進制公式可能很容易搞混: 08 和 09 是無效的數字,因為 8 和 9 不是有效的八進制位數。
/P 命令行開關允許將變數數值設成用戶輸入的一行輸入。讀取輸入行之前,顯示指定的 promptString。promptString 可以是空的。
環境變數替換已如下增強:
%PATH:str1=str2%
會擴展 PATH 環境變數,用 "str2" 代替擴展結果中的每個 "str1"。
要有效地從擴展結果中刪除所有的 "str1","str2" 可以是空的。
"str1" 可以以星號打頭;在這種情況下,"str1" 會從擴展結果的開始到 str1 剩餘部分第一次出現的地方,都一直保持相配。
也可以為擴展名指定子字元串。
%PATH:~10,5%
會擴展 PATH 環境變數,然後只使用在擴展結果中從第 11 個(偏移量 10)字元開始的五個字元。如果沒有指定長度,則採用默認值,即變數數值的余數。如果兩個數字(偏移量和長度)都是負數,使用的數字則是環境變數數值長度加上指定的偏移量或長度。
%PATH:~-10%
會提取 PATH 變數的最後十個字元。
%PATH:~0,-2%
會提取 PATH 變數的所有字元,除了最後兩個。
終於添加了延遲環境變數擴充的支持。該支持總是按默認值被停用,但也可以通過 CMD.EXE 的 /V 命令行開關而被啟用/停用。
考慮到讀取一行文本時所遇到的目前擴充的限制時,延遲環境變數擴充是很有用的,而不是執行的時候。以下例子說明直接變數擴充的問題:
set VAR=before
if "%VAR%" == "before" (
set VAR=after
if "%VAR%" == "after" @echo If you see this, it worked
)

不會顯示消息,因為在讀到第一個 IF 語句時,BOTH IF 語句中的 %VAR% 會被代替;原因是: 它包含 IF 的文體,IF 是一個復合語句。所以,復合語句中的 IF 實際上是在比較 "before" 和"after",這兩者永遠不會相等。同樣,以下這個例子也不會達到預期效果:
set LIST=
for %i in (*) do set LIST=%LIST% %i
echo %LIST%
原因是它不會在目前的目錄中建立一個文件列表,而只是將LIST 變數設成找到的最後一個文件。這也是因為 %LIST% 在FOR 語句被讀取時,只被擴充了一次;而且,那時的 LIST 變數是空的。因此,我們真正執行的 FOR 循環是:
for %i in (*) do set LIST= %i
這個循環繼續將 LIST 設成找到的最後一個文件。
延遲環境變數擴充允許您使用一個不同的字元(驚嘆號)在執行時間擴充環境變數。如果延遲的變數擴充被啟用,可以將上面例子寫成以下所示,以達到預期效果:
set VAR=before
if "%VAR%" == "before" (
set VAR=after
if "!VAR!" == "after" @echo If you see this, it worked
)
set LIST=
for %i in (*) do set LIST=!LIST! %i
echo %LIST%
如果命令擴展名被啟用,有幾個動態環境變數可以被擴展,但不會出現在 SET 顯示的變數列表中。每次變數數值被擴展時,這些變數數值都會被動態計算。如果用戶用這些名稱中任何一個定義變數,那個定義會替代下面描述的動態定義:
%CD% - 擴展到當前目錄字元串。

%DATE% - 用跟 DATE 命令同樣的格式擴展到當前日期。

%TIME% - 用跟 TIME 命令同樣的格式擴展到當前時間。

%RANDOM% - 擴展到 0 和 32767 之間的任意十進制數字。

%ERRORLEVEL% - 擴展到當前 ERRORLEVEL 數值。

%CMDEXTVERSION% - 擴展到當前命令處理器擴展名版本號。

%CMDCMDLINE% - 擴展到調用命令處理器的原始命令行。

9、SETLOCAL
開始批處理文件中環境改動的本地化操作。在執行 SETLOCAL 之後所做的環境改動只限於批處理文件。要還原原先的設置,必須執行 ENDLOCAL。達到批處理文件結尾時,對於該批處理文件的每個尚未執行的 SETLOCAL 命令,都會有一個隱含的 ENDLOCAL 被執行。
SETLOCAL
如果命令擴展名被啟用,SETLOCAL 會如下改變:
SETLOCAL 批命令現在可以接受可選參數:
ENABLEEXTENSIONS / DISABLEEXTENSIONS
啟動或停用命令處理器擴展名。詳細信息,請參閱 CMD /?。
ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION
啟動或停用延緩環境變數擴展名。詳細信息,請
參閱 對SET的介紹 。
無論在 SETLOCAL 命令之前它們的設置是什麼,這些修改會一直保留到匹配的 ENDLOCAL 命令。
如果有一個參數,SETLOCAL 命令將設置 ERRORLEVEL 的值。
如果有兩個有效參數中的一個,該值則為零。用下列技巧,您可以在批腳本中使用這個來決定擴展名是否可用:
VERIFY OTHER 2>nul
SETLOCAL ENABLEEXTENSIONS
IF ERRORLEVEL 1 echo Unable to enable extensions

這個方法之所以有效,是因為在 CMD.EXE 的舊版本上,SETLOCAL不設置 ERRORLEVEL 值。具有不正確參數的 VERIFY 命令將ERRORLEVEL 值初始化成非零值。

10、ENDLOCAL
結束批處理文件中環境改動的本地化操作。在執行ENDLOCAL 之後所做的環境改動不再僅限於批處理文件。批處理文件結束後,原先的設置無法還原。
ENDLOCAL
如果命令擴展名被啟用,ENDLOCAL 會如下改變:
如果相應的 SETLOCAL 用新的 ENABLEEXTENSIONS 或DISABLEEXTENSIONS 選項啟用或停用了命令擴展名,那麼,在ENDLOCAL 之後,命令擴展名的啟用/停用狀態會還原到執行相應的 SETLOCAL 命令前的狀態。

11、IF
執行批處理程序中的條件處理。

IF [NOT] ERRORLEVEL number command
IF [NOT] string1==string2 command
IF [NOT] EXIST filename command

NOT 指定只有條件為 false 的情況下, Windows XP 才
應該執行該命令。

ERRORLEVEL number 如果最後運行的程序返回一個等於或大於指定數字的退出編碼,指定條件為 true。

string1==string2 如果指定的文字字元串匹配,指定條件為 true。

EXIST filename 如果指定的文件名存在,指定條件為 true。

command 如果符合條件,指定要執行的命令。如果指定的
條件為 FALSE,命令後可跟一個執行 ELSE
關鍵字後的命令的 ELSE 命令。

ELSE 子句必須在 IF 之後出現在同一行上。例如:

IF EXIST filename. (
del filename.
) ELSE (
echo filename. missing.
)

因為 del 命令需要用一個新行終止,以下子句不會有效:

IF EXIST filename. del filename. ELSE echo filename. missing

由於 ELSE 命令必須與 IF 命令的尾端在同一行上,以下子句也不會有效:

IF EXIST filename. del filename.
ELSE echo filename. missing

如果都放在同一行上,以下子句有效:

IF EXIST filename. (del filename.) ELSE echo filename. missing

如果命令擴展名被啟用,IF 會如下改變:

IF [/I] string1 compare-op string2 command
IF CMDEXTVERSION number command
IF DEFINED variable command

其中,比較運算符可以是:

EQU - 等於
NEQ - 不等於
LSS - 小於
LEQ - 小於或等於
GTR - 大於
GEQ - 大於或等於

及 /I 開關;如果該開關被指定,則說明要進行的字元串比較不分大小寫。/I 開關可以用於 IF 的 string1==string2 的形式上。這些比較都是通用的;原因是,如果 string1 和 string2 都是由數字組成的,字元串會被轉換成數字,進行數字比較。

CMDEXTVERSION 條件的作用跟 ERRORLEVEL 的一樣,除了它是在跟與命令擴展名有關聯的內部版本號比較。第一個版本是 1。每次對命令擴展名有相當大的增強時,版本號會增加一個。
命令擴展名被停用時,CMDEXTVERSION 條件不是真的。

如果已定義環境變數,DEFINED 條件的作用跟 EXISTS 的一樣,除了它取得一個環境變數,返回的結果是 true。
如果沒有名為 ERRORLEVEL 的環境變數,%ERRORLEVEL%會擴充為 ERROLEVEL 當前數值的字元串表達式;否則,您會得到其數值。運行程序後,以下語句說明 ERRORLEVEL 的用法:

goto answer%ERRORLEVEL%
:answer0
echo Program had return code 0
:answer1
echo Program had return code 1

您也可以使用以上的數字比較:

IF %ERRORLEVEL% LEQ 1 goto okay

如果沒有名為 CMDCMDLINE 的環境變數,%CMDCMDLINE%將在 CMD.EXE 進行任何處理前擴充為傳遞給 CMD.EXE 的原始命令行;否則,您會得到其數值。

如果沒有名為 CMDEXTVERSION 的環境變數,%CMDEXTVERSION% 會擴充為 CMDEXTVERSION 當前數值的
字串符表達式;否則,您會得到其數值。

12、FOR
FOR %variable IN (set) DO command [command-parameters]

%variable 指定一個單一字母可替換的參數。
(set) 指定一個或一組文件。可以使用通配符。
command 指定對每個文件執行的命令。
command-parameters
為特定命令指定參數或命令行開關。

在批處理文件中使用 FOR 命令時,指定變數請使用 %%variable而不要用 %variable。變數名稱是區分大小寫的,所以 %i 不同於 %I.如果命令擴展名被啟用,下列額外的 FOR 命令格式會受到支持:

FOR /D %variable IN (set) DO command [command-parameters]

如果集中包含通配符,則指定與目錄名匹配,而不與文件名匹配。

FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters]

檢查以 [drive:]path 為根的目錄樹,指向每個目錄中的FOR 語句。如果在 /R 後沒有指定目錄,則使用當前目錄。如果集僅為一個單點(.)字元,則枚舉該目錄樹。

FOR /L %variable IN (start,step,end) DO command [command-parameters]

該集表示以增量形式從開始到結束的一個數字序列。
因此,(1,1,5) 將產生序列 1 2 3 4 5,(5,-1,1) 將產生序列 (5 4 3 2 1)。

FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]

或者,如果有 usebackq 選項:

FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]

filenameset 為一個或多個文件名。繼續到 filenameset 中的下一個文件之前,每份文件都已被打開、讀取並經過處理。
處理包括讀取文件,將其分成一行行的文字,然後將每行解析成零或更多的符號。然後用已找到的符號字元串變數值調用 For 循環。以默認方式,/F 通過每個文件的每一行中分開的第一個空白符號。跳過空白行。您可通過指定可選 "options"參數替代默認解析操作。這個帶引號的字元串包括一個或多個指定不同解析選項的關鍵字。這些關鍵字為:

eol=c - 指一個行注釋字元的結尾(就一個)
skip=n - 指在文件開始時忽略的行數。
delims=xxx - 指分隔符集。這個替換了空格和跳格鍵的默認分隔符集。
tokens=x,y,m-n - 指每行的哪一個符號被傳遞到每個迭代的 for 本身。這會導致額外變數名稱的分配。m-n格式為一個范圍。通過 nth 符號指定 mth。如果符號字元串中的最後一個字元星號,那麼額外的變數將在最後一個符號解析之後分配並接受行的保留文本。
usebackq - 指定新語法已在下類情況中使用:
在作為命令執行一個後引號的字元串並且一個單引號字元為文字字元串命令並允許在 filenameset中使用雙引號擴起文件名稱。

某些範例可能有助:

FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do @echo %i %j %k

會分析 myfile.txt 中的每一行,忽略以分號打頭的那些行,將每行中的第二個和第三個符號傳遞給 for 程序體;用逗號和/或空格定界符號。請注意,這個 for 程序體的語句引用 %i 來取得第二個符號,引用 %j 來取得第三個符號,引用 %k來取得第三個符號後的所有剩餘符號。對於帶有空格的文件名,您需要用雙引號將文件名括起來。為了用這種方式來使用雙引號,您還需要使用 usebackq 選項,否則,雙引號會被理解成是用作定義某個要分析的字元串的。

%i 專門在 for 語句中得到說明,%j 和 %k 是通過tokens= 選項專門得到說明的。您可以通過 tokens= 一行指定最多 26 個符號,只要不試圖說明一個高於字母 'z' 或'Z' 的變數。請記住,FOR 變數是單一字母、分大小寫和全局的;而

Ⅱ cmd怎麼使用

開始-運行-cmd有關某個命令的詳細信息,請鍵入 HELP 命令名
ASSOC 顯示或修改文件擴展名關聯。
AT 計劃在計算機上運行的命令和程序。
ATTRIB 顯示或更改文件屬性。
BREAK 設置或清除擴展式 CTRL+C 檢查。
CACLS 顯示或修改文件的訪問控制列表(ACLs)。
CALL 從另一個批處理程序調用這一個。
CD 顯示當前目錄的名稱或將其更改。
CHCP 顯示或設置活動代碼頁數。
CHDIR 顯示當前目錄的名稱或將其更改。
CHKDSK 檢查磁碟並顯示狀態報告。
CHKNTFS 顯示或修改啟動時間磁碟檢查。
CLS 清除屏幕。
CMD 打開另一個 Windows 命令解釋程序窗口。
COLOR 設置默認控制台前景和背景顏色。
COMP 比較兩個或兩套文件的內容。
COMPACT 顯示或更改 NTFS 分區上文件的壓縮。
CONVERT 將 FAT 卷轉換成 NTFS。您不能轉換
當前驅動器。
COPY 將至少一個文件復制到另一個位置。
DATE 顯示或設置日期。
DEL 刪除至少一個文件。
DIR 顯示一個目錄中的文件和子目錄。
DISKCOMP 比較兩個軟盤的內容。
DISKCOPY 將一個軟盤的內容復制到另一個軟盤。
DOSKEY 編輯命令行、調用 Windows 命令並創建宏。
ECHO 顯示消息,或將命令回顯打開或關上。
ENDLOCAL 結束批文件中環境更改的本地化。
ERASE 刪除至少一個文件。
EXIT 退出 CMD.EXE 程序(命令解釋程序)。
FC 比較兩個或兩套文件,並顯示
不同處。
FIND 在文件中搜索文字字元串。
FINDSTR 在文件中搜索字元串。
FOR 為一套文件中的每個文件運行一個指定的命令。
FORMAT 格式化磁碟,以便跟 Windows 使用。
FTYPE 顯示或修改用於文件擴展名關聯的文件類型。
GOTO 將 Windows 命令解釋程序指向批處理程序
中某個標明的行。
GRAFTABL 啟用 Windows 來以圖像模式顯示
擴展字元集。
HELP 提供 Windows 命令的幫助信息。
IF 執行批處理程序中的條件性處理。
LABEL 創建、更改或刪除磁碟的卷標。
MD 創建目錄。
MKDIR 創建目錄。
MODE 配置系統設備。
MORE 一次顯示一個結果屏幕。
MOVE 將文件從一個目錄移到另一個目錄。
PATH 顯示或設置可執行文件的搜索路徑。
PAUSE 暫停批文件的處理並顯示消息。
POPD 還原 PUSHD 保存的當前目錄的上一個值。
PRINT 列印文本文件。
PROMPT 更改 Windows 命令提示符。
PUSHD 保存當前目錄,然後對其進行更改。
RD 刪除目錄。
RECOVER 從有問題的磁碟恢復可讀信息。
REM 記錄批文件或 CONFIG.SYS 中的注釋。
REN 重命名文件。
RENAME 重命名文件。
REPLACE 替換文件。
RMDIR 刪除目錄。
SET 顯示、設置或刪除 Windows 環境變數。
SETLOCAL 開始批文件中環境更改的本地化。
SHIFT 更換批文件中可替換參數的位置。
SORT 對輸入進行分類。
START 啟動另一個窗口來運行指定的程序或命令。
SUBST 將路徑跟一個驅動器號關聯。
TIME 顯示或設置系統時間。
TITLE 設置 CMD.EXE 會話的窗口標題。
TREE 以圖形模式顯示驅動器或路徑的目錄結構。
TYPE 顯示文本文件的內容。
VER 顯示 Windows 版本。
VERIFY 告訴 Windows 是否驗證文件是否已正確
寫入磁碟。
VOL 顯示磁碟卷標和序列號。
XCOPY 復制文件和目錄樹。

appwiz.cpl------------添加刪除程序

control userpasswords2--------用戶帳戶設置

cleanmgr-------垃圾整理

CMD--------------命令提示符可以當作是 Windows 的一個附件,Ping,Convert 這些不能在圖形環境下 使用的功能要藉助它來完成。

cmd------jview察看Java虛擬機版本。

command.com------調用的則是系統內置的 NTVDM,一個 DOS虛擬機。它完全是一個類似 Virtual PC 的 虛擬環境,和系統本身聯系不大。當我們在命令提示符下運行 DOS 程序時,實際上也 是自動轉移到 NTVDM虛擬機下,和 CMD 本身沒什麼關系。

calc-----------啟動計算器

chkdsk.exe-----Chkdsk磁碟檢查

compmgmt.msc---計算機管理

conf-----------啟動 netmeeting

control userpasswords2-----User Account 許可權設置

devmgmt.msc--- 設備管理器

diskmgmt.msc---磁碟管理實用程序

dfrg.msc-------磁碟碎片整理程序

drwtsn32------ 系統醫生

dvdplay--------啟動Media Player

dxdiag-----------DirectX Diagnostic Tool

gpedit.msc-------組策略編輯器

gpupdate /target:computer /force 強制刷新組策略

eventvwr.exe-----事件查看器

explorer-------打開資源管理器

logoff---------注銷命令

lusrmgr.msc----本機用戶和組

msinfo32---------系統信息

msconfig---------系統配置實用程序

net start (servicename)----啟動該服務

net stop (servicename)-----停止該服務

notepad--------打開記事本

nusrmgr.cpl-------同control userpasswords,打開用戶帳戶控制面板

Nslookup-------IP地址偵測器

oobe/msoobe /a----檢查XP是否激活

perfmon.msc----計算機性能監測程序

progman--------程序管理器

regedit----------注冊表編輯器

regedt32-------注冊表編輯器

regsvr32 /u *.dll----停止dll文件運行

route print------查看路由表

rononce -p ----15秒關機

rsop.msc-------組策略結果集

rundll32.exe rundll32.exe %Systemroot%System32shimgvw.dll,ImageView_Fullscreen----啟動一個空白的Windows 圖片和傳真查看器

secpol.msc--------本地安全策略

services.msc---本地服務設置

sfc /scannow-----啟動系統文件檢查器

sndrec32-------錄音機

taskmgr-----任務管理器(適用於2000/xp/2003)

tsshutdn-------60秒倒計時關機命令

winchat--------XP自帶區域網聊天

winmsd---------系統信息

winver-----顯示About Windows 窗口

wupdmgr-----------Windows Update

Ⅲ CMD命令使用方法

CMD命令使用方法

熟練掌握CMD命令,只對我們有好處,沒有壞處。CMD命令包含Windows系統的所有CMD命令,學好CMD命令不僅在工作中對我們很有作用,而且在日常生活中也給我們帶來了很大的幫助。那CMD命令如何使用?下面就和大家分享一下掌握CMD命令的方法。

CMD命令如下:

一,ping

它是用來檢查網路是否通暢或者網路連接速度的命令。作為一個生活在網路上的管理員或者黑客來說,ping命令是第一個必須掌握的DOS命令,它所利用的原理是這樣的:網路上的機器都有唯一確定的IP地址,我們給目標IP地址發送一個數據包,對方就要返回一個同樣大小的數據包,根據返回的數據包我們可以確定目標主機的存在,可以初步判斷目標主機的操作系統等。下面就來看看它的一些常用的操作。先看看幫助吧,在DOS窗口中鍵入:ping /? 回車,。所示的幫助畫面。在此,我們只掌握一些基本的很有用的參數就可以了(下同)。

-t 表示將不間斷向目標IP發送數據包,直到我們強迫其停止。試想,如果你使用100M的寬頻接入,而目標IP是56K的小貓,那麼要不了多久,目標IP就因為承受不了這么多的數據而掉線,呵呵,一次攻擊就這么簡單的實現了。

-l 定義發送數據包的大小,默認為32位元組,我們利用它可以最大定義到65500位元組。結合上面介紹的-t參數一起使用,會有更好的效果哦。

-n 定義向目標IP發送數據包的次數,默認為3次。如果網路速度比較慢,3次對我們來說也浪費了不少時間,因為現在我們的目的僅僅是判斷目標IP是否存在,那麼就定義為一次吧。

說明一下,如果-t 參數和 -n參數一起使用,ping命令就以放在後面的參數為標准,比如“ping IP -t -n 3”,雖然使用了-t參數,但並不是一直ping下去,而是只ping 3次。另外,ping命令不一定非得ping IP,也可以直接ping主機域名,這樣就可以得到主機的IP。

下面我們舉個例子來說明一下具體用法。

這里time=2表示從發出數據包到接受到返回數據包所用的時間是2秒,從這里可以判斷網路連接速度的大小。從TTL的返回值可以初步判斷被ping主機的操作系統,之所以說“初步判斷”是因為這個值是可以修改的。這里TTL=32表示操作系統可能是 win98。

(小知識:如果TTL=128,則表示目標主機可能是Win2000;如果TTL=250,則目標主機可能是Unix)

至於利用ping命令可以快速查找區域網故障,可以快速搜索最快的QQ伺服器,可以對別人進行ping攻擊……這些就靠大家自己發揮了。

二,nbtstat

該命令使用TCP/IP上的NetBIOS顯示協議統計和當前TCP/IP連接,使用這個命令你可以得到遠程主機的NETBIOS信息,比如用戶名、所屬的工作組、網卡的MAC地址等。在此我們就有必要了解幾個基本的參數。

-a 使用這個參數,只要你知道了遠程主機的機器名稱,就可以得到它的NETBIOS信息(下同)。

-A 這個參數也可以得到遠程主機的NETBIOS信息,但需要你知道它的IP。

-n 列出本地機器的NETBIOS信息。

當得到了對方的IP或者機器名的時候,就可以使用nbtstat命令來進一步得到對方的信息了,這又增加了我們入侵的保險系數。

三,netstat

這是一個用來查看網路狀態的命令,操作簡便功能強大。

-a 查看本地機器的所有開放埠,可以有效發現和預防木馬,可以知道機器所開的服務等信息,如圖4。

這里可以看出本地機器開放有FTP服務、Telnet服務、郵件服務、WEB服務等。用法:netstat -a IP。

-r 列出當前的路由信息,告訴我們本地機器的網關、子網掩碼等信息。用法:netstat -r IP。

四,tracert

跟蹤路由信息,使用此命令可以查出數據從本地機器傳輸到目標主機所經過的所有途徑,這對我們了解網路布局和結構很有幫助。如圖5。

這里說明數據從本地機器傳輸到192.168.0.1的機器上,中間沒有經過任何中轉,說明這兩台機器是在同一段區域網內。用法:tracert IP。

五,net

這個命令是網路命令中最重要的一個,必須透徹掌握它的每一個子命令的用法,因為它的功能實在是太強大了,這簡直就是 微軟為我們提供的最好的入侵工具。首先讓我們來看一看它都有那些子命令,鍵入net /?回車如圖6。

在這里,我們重點掌握幾個入侵常用的子命令。

net view

使用此命令查看遠程主機的所以共享資源。命令格式為net view IP。

net use

把遠程主機的某個共享資源影射為本地盤符,圖形界面方便使用,呵呵。命令格式為net use x: IPsharename。上面一個表示把192.168.0.5IP的共享名為magic的目錄影射為本地的Z盤。下面表示和192.168.0.7 建立IPC$連接(net use IPIPC$ “password” /user:“name”),

建立了IPC$連接後,呵呵,就可以上傳文件了: nc.exe 192.168.0.7admin$,表示把本地目錄下的nc.exe傳到遠程主機,結合後面要介紹到的其他DOS命令就可以實現入侵了。

net start

使用它來啟動遠程主機上的服務。當你和遠程主機建立連接後,如果發現它的什麼服務沒有啟動,而你又想利用此服務怎麼辦?就使用這個命令來啟動吧。用法:net start servername,如圖9,成功啟動了telnet服務。

net stop

入侵後發現遠程主機的某個服務礙手礙腳,怎麼辦?利用這個命令停掉就ok了,用法和net start同。

net user

查看和帳戶有關的情況,包括新建帳戶、刪除帳戶、查看特定帳戶、激活帳戶、帳戶禁用等。這對我們入侵是很有利的,最重要的,它為我們克隆帳戶提供了前提。鍵入不帶參數的net user,可以查看所有用戶,包括已經禁用的。下面分別講解。

1,net user abcd 1234 /add,新建一個用戶名為abcd,密碼為1234的帳戶,默認為user組成員。

2,net user abcd /del,將用戶名為abcd的`用戶刪除。

3,net user abcd /active:no,將用戶名為abcd的用戶禁用。

4,net user abcd /active:yes,激活用戶名為abcd的用戶。

5,net user abcd,查看用戶名為abcd的用戶的情況

net localgroup

查看所有和用戶組有關的信息和進行相關操作。鍵入不帶參數的net localgroup即列出當前所有的用戶組。在入侵過程中,我們一般利用它來把某個帳戶提升為administrator組帳戶,這樣我們利用這個帳戶就可以控制整個遠程主機了。用法:net localgroup groupname username /add。

現在我們把剛才新建的用戶abcd加到administrator組里去了,這時候abcd用戶已經是超級管理員了,呵呵,你可以再使用net user abcd來查看他的狀態,和圖10進行比較就可以看出來。但這樣太明顯了,網管一看用戶情況就能漏出破綻,所以這種方法只能對付菜鳥網管,但我們還得知道。現在的手段都是利用其他工具和手段克隆一個讓網管看不出來的超級管理員,這是後話。有興趣的朋友可以參照《黑客防線》第30期上的《由淺入深解析隆帳戶》一文。

net time

這個命令可以查看遠程主機當前的時間。如果你的目標只是進入到遠程主機裡面,那麼也許就用不到這個命令了。但簡單的入侵成功了,難道只是看看嗎?我們需要進一步滲透。這就連遠程主機當前的時間都需要知道,因為利用時間和其他手段(後面會講到)可以實現某個命令和程序的定時啟動,為我們進一步入侵打好基礎。用法:net time IP。

六,at

這個命令的作用是安排在特定日期或時間執行某個特定的命令和程序(知道net time的重要了吧?)。當我們知道了遠程主機的當前時間,就可以利用此命令讓其在以後的某個時間(比如2分鍾後)執行某個程序和命令。用法:at time command computer。

表示在6點55分時,讓名稱為a-01的計算機開啟telnet服務(這里net start telnet即為開啟telnet服務的命令)。

七,ftp

大家對這個命令應該比較熟悉了吧?網路上開放的ftp的主機很多,其中很大一部分是匿名的,也就是說任何人都可以登陸上去。現在如果你掃到了一台開放 ftp服務的主機(一般都是開了21埠的機器),如果你還不會使用ftp的命令怎麼辦?下面就給出基本的ftp命令使用方法。

首先在命令行鍵入ftp回車,出現ftp的提示符,這時候可以鍵入“help”來查看幫助(任何DOS命令都可以使用此方法查看其幫助)。

大家可能看到了,這么多命令該怎麼用?其實也用不到那麼多,掌握幾個基本的就夠了。

首先是登陸過程,這就要用到open了,直接在ftp的提示符下輸入“open 主機IP ftp埠”回車即可,一般埠默認都是21,可以不寫。接著就是輸入合法的用戶名和密碼進行登陸了,這里以匿名ftp為例介紹。

用戶名和密碼都是ftp,密碼是不顯示的。當提示**** logged in時,就說明登陸成功。這里因為是匿名登陸,所以用戶顯示為Anonymous。

接下來就要介紹具體命令的使用方法了。

dir 跟DOS命令一樣,用於查看伺服器的文件,直接敲上dir回車,就可以看到此ftp伺服器上的文件。

cd 進入某個文件夾。

get 下載文件到本地機器。

put 上傳文件到遠程伺服器。這就要看遠程ftp伺服器是否給了你可寫的許可權了,如果可以,呵呵,該怎麼 利用就不多說了,大家就自由發揮去吧。

delete 刪除遠程ftp伺服器上的文件。這也必須保證你有可寫的許可權。

bye 退出當前連接。

quit 同上。

八,telnet

功能強大的遠程登陸命令,幾乎所有的入侵者都喜歡用它,屢試不爽。為什麼?它操作簡單,如同使用自己的機器一樣,只要你熟悉DOS命令,在成功以 administrator身份連接了遠程機器後,就可以用它來干你想乾的一切了。下面介紹一下使用方法,首先鍵入telnet回車,再鍵入help查看其幫助信息。

然後在提示符下鍵入open IP回車,這時就出現了登陸窗口,讓你輸入合法的用戶名和密碼,這里輸入任何密碼都是不顯示的。

當輸入用戶名和密碼都正確後就成功建立了telnet連接,這時候你就在遠程主機上具有了和此用戶一樣的許可權,利用DOS命令就可以實現你想乾的事情了。這里我使用的超級管理員許可權登陸的。

到這里為止,網路DOS命令的介紹就告一段落了,這里介紹的目的只是給菜鳥網管一個印象,讓其知道熟悉和掌握網路DOS命令的重要性。其實和網路有關的DOS命令還遠不止這些,這里只是拋磚引玉,希望能對廣大菜鳥網管有所幫助。學好DOS對當好網管有很大的幫助,特別的熟練掌握了一些網路的DOS命令。

另外大家應該清楚,任何人要想進入系統,必須得有一個合法的用戶名和密碼(輸入法漏洞差不多絕跡了吧),哪怕你拿到帳戶的只有一個很小的許可權,你也可以利用它來達到最後的目的。所以堅決消滅空口令,給自己的帳戶加上一個強壯的密碼,是最好的防禦弱口令入侵的方法。

;

Ⅳ 計算機cmd命令如何使用

cmd命令簡介
cmd是command的縮寫.即命令行 。
在9x系統下輸入command就可以打開命令行.而在NT系統上可以輸入cmd來打開,在windows2000後被cmd替代,利用CMD命令查詢系統的信息或者是判斷網路的好壞。
cmd的運行
CMD命令:開始->運行->鍵入cmd或command (在命令行里可以看到系統版本、文件系統版本)

Ⅳ 用cmd 如何輸入命令 進入文件夾

操作設備:戴爾電腦

操作系統:win10

1、Windows鍵+R打開運行 輸入cmd敲回車,打開命令提示符程序,如下圖所示:

Ⅵ 如何使用CMD命令行

通常是需要在cmd中用代碼查詢數據才要在cmd中進入D盤。其方法步驟為:

1、首先需要先進入cmd,點擊電腦左下角的開始按鈕,點擊運行按鈕,就會出現運行輸入窗口,輸入cmd就會進入。

2、如果開始按鈕中沒有運行按鈕,那麼可以通過右鍵查看開始屬性,在開始菜單自定義中勾選運行,確定後就會出現了。

3、然後再cmd運行窗口中輸入d:就是進入D盤根目錄了。這時候只會提示你進入d盤了,而不會顯示D盤都有哪些文件。如果在其它磁碟目錄下需要返回D盤時,輸入cd命令然後回車,再輸入「D:」 即可回到D盤。

4、這時候在cmd中輸入dir,就可以看到d盤下的各個文件名稱了。

Ⅶ 如何用CMD命令運行程序

解決步驟如下:

1.找到他的地址

2.直接打入名稱,例如你要打開C盤下的123文件夾下的software.exe。

CMD是命令解釋程序。CMD的命令比較容易運行,只要操作得當,都沒有什麼問題。

Ⅷ cmd怎麼打開

方法:

摁WIN鍵+R鍵打開運行,然後輸入cmd,回車進入命令提示符。


簡介:

CMD命令是一種命令提示符,CMD是command的縮寫,即命令提示符(CMD),是在OS / 2 , Win為基礎的操作系統(包括Windows 2000和XP中, Vista中,和Server 2003 )下的「MS-DOS 方式」。

中文版Windows XP中的命令提示符進一步提高了與DOS下操作命令的兼容性,用戶可以在命令提示符直接輸入中文調用文件。

閱讀全文

與cmd的使用方法相關的資料

熱點內容
安神助眠的簡單方法 瀏覽:737
針灸研究方法免費下載 瀏覽:318
三星a8無響應解決方法 瀏覽:873
春天釣蝦的正確方法 瀏覽:395
手機來電錄音怎麼設置在哪裡設置方法 瀏覽:690
隔膜泵使用方法 瀏覽:229
顛病大發作治療方法 瀏覽:820
祛痘膏的正確使用方法 瀏覽:183
回收舊手機的方法 瀏覽:279
版稅的計算方法 瀏覽:73
燒傷時正確的急救方法 瀏覽:11
DNA大片段突變的檢測方法 瀏覽:258
autocad2009的安裝及激活方法 瀏覽:955
用化學方法鑒別正丁基氯 瀏覽:326
樂視手機話筒設置方法 瀏覽:550
怎麼才能治療黑眼圈的方法 瀏覽:892
三種常用的交接棒方法 瀏覽:642
股票入門實戰的解套方法與技巧 瀏覽:836
躺平有哪些方法呢 瀏覽:853
hyperlink使用方法 瀏覽:336