DOS命令全集

DOS命令全集DOS命令全集
一)MD——建立子目錄
1.功能:創建新的子目錄
2.類型:內部命令
3.格式:MD[盤符:][路徑名]〈子目錄名〉
4.使用說明:
(1)“盤符”:指定要建立子目錄的磁盤驅動器字母,若省略,則爲當前驅動器;
(2)“路徑名”:要建立的子目錄的上級目錄名,若缺省則建在當前目錄下。
例:(1)在C盤的根目錄下創建名爲FOX的子目錄;(2)在FOX子目錄下再創建USER子目錄。
C:、>MD FOX (在當前驅動器C盤下創建子目錄FOX)
C:、>MD FOX 、USER (在FOX 子目錄下再創建USER子目錄)
(二)CD——改變當前目錄
1.功能:顯示當前目錄
2.類型:內部命令
3.格式:CD[盤符:][路徑名][子目錄名]
4.使用說明:
(1)如果省略路徑和子目錄名則顯示當前目錄;
(2)如採用“CD、”格式,則退回到根目錄;
(3)如採用“CD.。”格式則退回到上一級目錄。
例:(1)進入到USER子目錄;(2)從USER子目錄退回到子目錄;(3)返回到根目錄。
C:、>CD FOX 、USER(進入FOX子目錄下的USER子目錄)
C:、FOX、USER>CD.。 (退回上一級根目錄)
C:、FOX>CD、 (返回到根目錄)
C:、>
(三)RD——刪除子目錄命令
1.功能:從指定的磁盤刪除了目錄。
2.類型:內部命令
3.格式:RD[盤符:][路徑名][子目錄名]
4.使用說明:
(1)子目錄在刪除前必須是空的,也就是說需要先進入該子目錄,使用DEL(刪除文件的命令)將其子目錄下的文件刪空,然後再退回到上一級目錄,用RD命令刪除該了目錄本身;
(2)不能刪除根目錄和當前目錄。
例:要求把C盤FOX子目錄下的USER子目錄刪除,操作如下:
第一步:先將USER子目錄下的文件刪空;
C、>DEL C:、FOX、USER、*。*
第二步,刪除USER子目錄。
C、>RD C:、FOX、USER
(四)DIR——顯示磁盤目錄命令
1.功能:顯示磁盤目錄的內容。
2.類型:內部命令
3.格式:DIR [盤符][路徑][/P][/W]
4.
使用說明:/P的使用;當欲查看的目錄太多,無法在一屏顯示完屏幕會一直往上卷,不容易看清,加上/P參數後,屏幕上會分面一次顯示23行的文件信息,然後暫停,並提示;Press
any key to continue
/W的使用:加上/W只顯示文件名,至於文件大小及建立的日期和時間則都省略。加上參數後,每行可以顯示五個文件名。
PATH——路徑設置命令
1.功能:設備可執行文件的搜索路徑,只對文件有效。
2.類型:內部命令
3.格式:PATH[盤符1]目錄[路徑名1]{[;盤符2:],〈目錄路徑名2〉…}
4.使用說明:
(1)當運行一個可執行文件時,DOS會先在當前目錄中搜索該文件,若找到則運行之;若找不到該文件,則根據PATH命令所設置的路徑,順序逐條地到目錄中搜索該文件;
(2)PATH命令中的路徑,若有兩條以上,各路徑之間以一個分號“;”隔開;
(3)PATH命令有三種使用方法:
PATH[盤符1:][路徑1][盤符2:][路徑2]…(設定可執行文件的搜索路徑)
PATH:(取消所有路徑)
PATH:(顯示目前所設的路徑)
(六)TREE——顯示磁盤目錄結構命令
1.功能:顯示指定驅動器上所有目錄路徑和這些目錄下的所有文件名。
2.類型:外部命令
3.格式:TREE[盤符:][/F][》PRN]
4.使用說明:
(1)使用/F參數時顯示所有目錄及目錄下的所有文件,省略時,只顯示目錄,不顯示目錄下的文件;
(2)選用>PRN參數時,則把所列目錄及目錄中的文件名打印輸出。
(七)DELTREE——刪除整個目錄命令
1.功能:將整個目錄及其下屬子目錄和文件刪除。
2.類型:外部命令
3.格式:DELTREE[盤符:]〈路徑名〉
4.使用說明:該命令可以一步就將目錄及其下的所有文件、子目錄、更下層的子目錄一併刪除,而且不管文件的屬性爲隱藏、系統或只讀,只要該文件位於刪除的目錄之下,DELTREE都一視同仁,照刪不誤。使用時務必小心!!!
五、磁盤操作類命令
(一)FORMAT——磁盤格式化命令
1.功能:對磁盤進行格式化,劃分磁道和扇區;同時檢查出整個磁盤上有無帶缺陷的磁道,對壞道加註標記;建立目錄區和文件分配表,使磁盤作好接收DOS的準備。
2.類型:外部命令
3.格式:FORMAT〈盤符:〉[/S][/4][/Q]
4.使用說明:
(1)命令後的盤符不可缺省,若對硬盤進行格式化,則會如下列提示:WARNING:ALL DATA ON NON ——REMOVABLE DISK
DRIVE C:WILL BE LOST !
Proceed with Format (Y/N)?
(警告:所有數據在C盤上,將會丟失,確實要繼續格式化嗎?)
(2)若是對軟盤進行格式化,則會如下提示:Insert mew diskette for drive A;
and press ENTER when ready…
(在A驅中插入新盤,準備好後按回車鍵)。
(3)選用[/S]參數,將把DOS系統文件IO.SYS
、MSDOS.SYS及COMMAND.COM複製到磁盤上,使該磁盤可以做爲DOS啓動盤。若不選用/S參數,則格式化後的磙盤只能讀寫信息,而不能做爲啓動盤;
(4)選用[/4]參數,在1.2MB的高密度軟驅中格式化360KB的低密度盤;
(5)選用[/Q]參數,快速格式化,這個參數並不會重新劃分磁盤的磁道貌岸然和扇區,只能將磁盤根目錄、文件分配表以及引導扇區清成空白,因此,格式化的速度較快。
(6)選用[/U]參數,表示無條件格式化,即破壞原來磁盤上所有數據。不加/U,則爲安全格式化,這時先建立一個鏡象文件保存原來的FAT表和根目錄,必要時可用UNFORRMAT恢復原來的數據。
(二)UNFORMAT恢復格式化命令
1.功能:對進行過格式化誤操作丟失數據的磁盤進行恢復。
2.類型:外部命令
3.格式:UNFORMAT〈盤符〉[/L][/U][/P][/TEST]
4.使用說明:用於將被“非破壞性”格式化的磁盤恢復。根目錄下被刪除的文件或子目錄及磁盤的系統扇區(包括FAT、根目錄、BOOT扇區及硬盤分區表)受損時,也可以用UNFORMAT來搶救。
(1)選用/L參數列出找到的子目錄名稱、文件名稱、大孝日期等信息,但不會真的做FORMAT工作。
(2)選用/P參數將顯示於屏幕的報告(包含/L參數所產生的信息)同時也送到打印機。運行時屏幕會顯示:“Print out will be sent to
LPT1”
(3)選用/TEST參數只做模擬試驗(TEST)不做真正的寫入動作。使用此參數屏幕會顯示:“Simulation only”
(4)選用/U參數不使用MIRROR映像文件的數據,直接根據磁盤現狀進行UNFORMAT。
(5)選用/PSRTN;修復硬盤分區表。
若在盤符之後加上/P、/L、/TEST之一,都相當於使用了/U參數,UNFORMAT會“假設”此時磁盤沒有MIRROR映像文件。
注意:UNFORMAT對於剛FORMAT的磁盤,可以完全恢復,但FORMAT後若做了其它數據的寫入,則UNFORMAT就不能完整的救回數據了。UNFORMAT並非是萬能的,由於使用UNFORMAT會重建FAT與根目錄,所以它也具有較高的危險性,操作不當可能會擴大損失,如果僅誤刪了幾個文件或子目錄,只需要利用UNDELETE就夠了。
三) CHKDSK——檢查磁盤當前狀態命令
1.功能:顯示磁盤狀態、內存狀態和指定路徑下指定文件的不連續數目。
2.類型:外部命令
3.格式:CHKDSK [盤符:][路徑][文件名][/F][/V]
4.使用說明:
(1)選用[文件名]參數,則顯示該文件佔用磁盤的情況;
(2)選[/F]參數,糾正在指定磁盤上發現的邏輯錯誤;
(3)選用[/V]參數,顯示盤上的所有文件和路徑。
(四)DISKCOPY——整盤複製命令
1.功能:複製格式和內容完全相同的軟盤。
2.類型:外部命令
3.格式:DISKCOPY[盤符1:][盤符2:]
4.使用說明:
(1)如果目標軟盤沒有格式化,則複製時系統自動選進行格式化。
(2)如果目標軟盤上原有文件,則複製後將全部丟失。
(3)如果是單驅動器複製,系統會提示適時更換源盤和目標盤,請操作時注意分清源盤和目標盤。
(五)LABEL——建立磁盤卷標命令
1.功能:建立、更改、刪除磁盤卷標。
2.類型:外部命令
3.格式:LABEL[盤符:][卷標名]
4.使用說明:
(1)卷標名爲要建立的卷標名,若缺省此參數,則系統提示鍵入卷標名或詢問是否刪除原有的卷標名;
(2)卷標名由1至11個字符組成。
(六)VOL——顯示磁盤卷標命令
1.功能:查看磁盤卷標號。
2.類型:內部命令
3.格式:VOL[盤符:]
4.使用說明:省略盤符,顯示當前驅動器卷標。
(七)SCANDISK——檢測、修復磁盤命令
1.功能:檢測磁盤的FAT表、目錄結構、文件系統等是否有問題,並可將檢測出的問題加以修復。
2.類型:外部命令
3.格式:SCANDISK[盤符1:]{[盤符2:]…}[/ALL]
4.使用說明:
(1)CCANDISK適用於硬盤和軟盤,可以一次指定多個磁盤或選用[/ALL]參數指定所有的磁盤;
(2)可自動檢測出磁盤中所發生的交叉連接、丟失簇和目錄結構等邏輯上的錯誤,並加以修復。
(八)DEFRAG——重整磁盤命令
1.。功能:整理磁盤,消除磁盤碎塊。
2.類型:外部命令
3.格式:DEFRAG[盤符:][/F]
4.使用說明:選用/F參數,將文件中存在盤上的碎片消除,並調整磁盤文件的安排,確保文件之間毫無空隙。從而加快讀盤速度和節省磁盤空間。
(九)SYS——系統複製命令
1.功能:將當前驅動器上的DOS系統文件IO.SYS,MSDOS.SYS和COMMAND.COM 傳送到指定的驅動器上。
2.類型:外部命令
3.格式:SYS[盤符:]
*使用說明:如果磁盤剩餘空間不足以存放系統文件,則提示:No roomfor on destination disk.
文件操作類命令
(一) COPY文件複製命令
1.功能:拷貝一個或多個文件到指定盤上。
2.類型:內部命令
3.格式:COPY [源盤][路徑]〈源文件名〉[目標盤][路徑][目標文件名]
4.使用說明:
(1)COPY是文件對文件的方式複製數據,複製前目標盤必須已經格式化;
(2)複製過程中,目標盤上相同文件名稱的舊文件會被源文件取代;
(3)複製文件時,必須先確定目標般有足夠的空間,否則會出現;insufficient的錯誤信息,提示磁盤空間不夠;
(4)文件名中允許使用通配舉“*”“?”,可同時複製多個文件;
(5)COPY命令中源文件名必須指出,不可以省略。
(6)複製時,目標文件名可以與源文件名相同,稱作“同名拷貝”此時目標文件名可以省略;
(7)複製時,目標文件名也可以與源文件名不相同,稱作“異名拷貝”,此時,目標文件名不能省略;
(8)複製時,還可以將幾個文件合併爲一個文件,稱爲“合併拷貝”,格式如下:COPY;[源盤][路徑]〈源文件名1〉〈源文件名2〉…[目標盤][路徑]〈目標文件名〉;
(9)利用COPY命令,還可以從鍵盤上輸入數據建立文件,格式如下:COPY CON [盤符:][路徑]〈文件名〉;
(10)注意:COPY命令的使用格式,源文件名與目標文件名之間必須有空格!
(二)XCOPY——目錄複製命令
1.功能:複製指定的目錄和目錄下的所有文件連同目錄結構。
2.類型:外部命令
3.格式:XCOPY [源盤:]〈源路徑名〉[目標盤符:][目標路徑名][/S][/V][/E]
4.使用說明:
(1)XCOPY是COPY的擴展,可以把指定的目錄連文件和目錄結構一併拷貝,但不能拷貝隱藏文件和系統文件;
(2)使用時源盤符、源目標路徑名、源文件名至少指定一個;
(3)選用/S時對源目錄下及其子目錄下的所有文件進行COPY。除非指定/E參數,否則/S不會拷貝空目錄,若不指定/S參數,則XCOPY只拷貝源目錄本身的文件,而不涉及其下的子目錄;
(4)選用/V參數時,對的拷貝的扇區都進行較驗,但速度會降低。
(三)TYPE——顯示文件內容命令
1.功能:顯示ASCII碼文件的內容。
2.類型:內部命令。
3.格式:TYPE[盤符:][路徑]〈文件名〉
4.使用說明:
(1)顯示由ASCII碼組成的文本文件,對。EXE.COM等爲擴展名的文件,其顯示的內容是無法閱讀的,沒有實際意義2;
(2)該命令一次只可以顯示一個文件的內容,不能使用通配符;
(3)如果文件有擴展名,則必須將擴展名寫上;
(4)當文件較長,一屏顯示不下時,可以按以下格式顯示;TYPE[盤符:][路徑]〈文件名〉|MORE,MORE爲分屏顯示命令,使用些參數後當滿屏時會暫停,按任意鍵會繼續顯示。
(5)若需將文件內容打印出來,可用如下格式:
TYPE[盤符:][路徑]〈文件名〉,>PRN
此時,打印機應處於聯機狀態。
(四) REN——文件改名命令
1.功能:更改文件名稱
2.類型:內部命令
3.格式:REN[盤符:][路徑]〈舊文件名〉〈新文件名〉
4.使用說明:
(1)新文件名前不可以加上盤符和路徑,因爲該命令只能對同一盤上的文件更換文件名;
(2)允許使用通配符更改一組文件名或擴展名。
(五)FC——文件比較命令
1.功能:比較文件的異同,並列出差異處。
2.類型:外部命令
3.格式:FC[盤符:][路徑名]〈文件名〉[盤符:][路徑名][文件名][/A][/B][/C][/N]
4.使用說明:
(1)選用/A參數,爲ASCII碼比較模式;
(2)選用/B參數,爲二進制比較模式;
(3)選用/C參數,將大小寫字符看成是相同的字符。
(4)選用/N參數,在ASCII碼比較方式下,顯示相異處的行號。
(六)ATTRIB——修改文件屬性命令
1.功能:修改指定文件的屬性。(文件屬性參見2.5.4(二)文件屬性一節)
2.類型:外部命令。
3.格式:ATTRIB[文件名][R][——R][A][——A][H][——H][S][——S][/S]
4.使用說明:
(1)選用R參數,將指定文件設爲只讀屬性,使得該文件只能讀取,無法寫入數據或刪除;選用——R參數,去除只讀屬性;
(2)選用A參數,將文件設置爲檔案屬性;選用——A參數,去除檔案屬性;
(3)選用H參數,將文件調協爲隱含屬性;選用——H參數,去隱含屬性;
(4)選用S參數,將文件設置爲系統屬性;選用——S參數,去除系統屬性;
(5)選用/S參數,對當前目錄下的所有子目錄及作設置。
七) DEL——刪除文件命令
1.功能:刪除指定的文件。
2.類型:內部命令
3.格式:DEL[盤符:][路徑]〈文件名〉[/P]
4.使用說明:
(1)選用/P參數,系統在刪除前詢問是否真要刪除該文件,若不使用這個參數,則自動刪除;
(2)該命令不能刪除屬性爲隱含或只讀的文件;
(3)在文件名稱中可以使用通配符;
(4)若要刪除磁盤上的所有文件(DEL*·*或DEL·),則會提示:(Arey ou
sure?)(你確定嗎?)若回答Y,則進行刪除,回答N,則取消此次刪除作業。
(八) UNDELETE——恢復刪除命令
1.功能:恢復被誤刪除命令
2.類型:外部命令。
3.格式:UNDELETE[盤符:][路徑名]〈文件名〉[/DOS]/LIST][/ALL]
4.使用說明:使用UNDELETE可以使用“*”和“?”通配符。
(1)選用/DOS參數根據目錄裏殘留的記錄來恢復文件。由於文件被刪除時,目錄所記載斬文件名第一個字符會被改爲E5,DOS即依據文件開頭的E5和其後續的字符來找到欲恢復的文件,所以,UNDELETE會要求用戶輸入一個字符,以便將文件名字補齊。但此字符不必和原來的一樣,只需符合DOS的文件名規則即可。
(2)選用/LIST只“列出”符合指定條件的文件而不做恢復,所以對磁盤內容完全不會有影響。
(3)選用/ALL自動將可完全恢復的文件完全恢復,而不一一地詢問用戶,使用此參數時,若UNDELTE利用目錄裏殘留的記錄來將文件恢復,則會自動選一個字符將文件名補齊,並且使其不與現存文件名相同,選用字符的優選順序爲:#%——0000123456789A~Z。
UNDELETE還具有建立文件的防護措施的功能,已超出本課程授課範圍,請讀者在使用些功能時查閱有關DOS手冊。
七、其它命令
(一)CLS——清屏幕命令
1功能:清除屏幕上的所有顯示,光標置於屏幕左上角。
2類型:內部命令
3格式:CLS
(二) VER查看系統版本號命令
1功能:顯示當前系統版本號
2類型:內部命令
3格式:VER
(三) DATA日期設置命令
1功能:設置或顯示系統日期。
2類型:內部命令
3格式:DATE[mm——dd——yy]
4使用說明:
(1)省略[mm——dd——yy]顯示系統日期並提示輸入新的日期,不修改則可直接按回車鍵,[mm——dd——yy]爲“月月——日日——年年”格式;
(2)當機器開始啓動時,有自動處理文件(AUTOEXEC.BAT)被執行,則系統不提示輸入系統日期。否則,提示輸入新日期和時間。
(四) TIME系統時鐘設置命令
1功能:設置或顯示系統時期。
2類型:內部命令
3格式:TIME[hh:mm:ss:xx]
4使用說明:
(1)省略[hh:mm:ss:xx],顯示系統時間並提示輸入新的時間,不修改則可直接按回車鍵,[hh:mm:ss:xx]爲“小時:分鐘:秒:百分之幾秒”格式;
(2)當機器開始啓動時,有自動處理文件(AUTOEXEC.BAT)被執行,則系統不提示輸入系統日期。否則,提示輸入新日期和時間。
(五)MEM查看當前內存狀況命令
1功能:顯示當前內存使用的情況
2類型:外部命令
3格式:MEM[/C][/F][/M][/P]
4使用說明:
(1)選用/C參數列出裝入常規內存和CMB的各文件的長度,同時也顯示內存空間的使用狀況和最大的可用空間;
(2)選用/F參數分別列出當前常規內存剩餘的字節大小和UMB可用的區域及大小;
(3)選用/M參數顯示該模塊使用內存地地址、大小及模塊性質;
(4)選用/P參數指定當輸出超過一屏時,暫停供用戶查看。
(六) MSD顯示系統信息命令
1功能:顯示系統的硬件和操作系統的狀況。
2類型:外部命令
3格式:MSD[/I][/B][/S]
4使用說明:
(1)選用/I參數時,不檢測硬件;
(2)選用/B參數時,以黑白方式啓動MSD;
(3)選用/S參數時,顯示出簡明的系統報告。
 
DOS批處理文件
   
DOS下的可執行文件有三種,分別是EXE,COM和BAT。其中,EXE和COM文件都是二進制形式的,只有BAT文件是文本形式的,可以直接閱讀。因此,BAT文件和以上二進制可執行文件相比,內容要簡單的多。這些文件內包含着DOS命令的集合,通常叫作批處理文件。批處理文件的組成雖然比較簡單,但其用處非常大,使用也比較廣泛。比如每次都執行一些相同的命令,您一定會覺得非常麻煩,而放在批處理文件中執行的話則輕鬆得多。AUTOEXEC.BAT就是一個特殊的批處理文件,它在DOS的啓動時自動運行,在系統的配置中發揮着非常大的作用。因此,要學好DOS,就要學好批處理文件。下面介紹批處理文件的命令及其使用。
DOS自帶的批處理命令:
@:將這個符號放在批文件中其它命令的前面,運行時將不顯示命令本身。
如@ECHO OFF命令就在批文件首經常用到。
CALL:從一個批文件中調用另一個批文件,調用完後繼續執行原來的批文件。
用法:CALL [批文件名]
注:也可以使用COMMAND /C命令完成同樣的操作。
CHOICE:選擇命令。這是一個DOS外部命令,但它主要用在批文件中。
CHOICE命令執行後將提示可選擇的項目,這時通過一個按鍵來選則。
用法:CHOICE:[/C[:]按鍵表] [/N] [/S] [/T[:]選擇值,秒數] [顯示文本]
其中,/C表示可選則的按鍵,/N表示不要顯示提示信息,/S表示大小寫字符敏感方式,/T表示若在批定的時間內沒有選則的話,自動執行/C中定義的某個選擇值。顯示文本是CHOICE命令執行時的提示信息。選擇結果將用ERRORLEVEL值來表示。
ECHO:顯示指定的信息。通常顯示在屏幕上。
如ECHO Hello將在屏幕上顯示Hello的字樣。
另外,ECHO ON|OFF用來設置在批文件執行時是否顯示命令本身。而ECHO OFF與@的意思一樣,但它是一個單獨的命令,而不能像@那樣放在其它命令之前。
FOR:對於指定的文件運行相應的命令。
大家知道,DOS下許多命令支持通配符,如?和*,可以一次指定一批文件,非常方便。然而,並非所有的DOS命令都支持通配符,如TYPE(文件內容顯示命令)就不支持。有了FOR命令就沒有關係了,利於它可以使TYPE命令可以一次顯示多個文件。
用法:FOR %變量名 IN (文件集) DO 命令 [命令參數]
注:以上是FOR命令的固定形式,IN和DO的位置必須正確,否則將提示語法錯誤。
如FOR %F IN (*.*) DO TYPE %F命令就可以實現TYPE命令一次顯示多個文件。
注:%F是變量名,也可用%G等代替,但前後必須一致。在批文件中用%%F代替。
GOTO:轉到批文件內部的某個標號下執行。
大家知道,在編程中往往需要重複或跳轉到某個地方繼續執行,如BASIC語言中的GOTO命令。批文件中的GOTO命令也可以完成類似的功能。
用法:GOTO [標號名]
其中,標號名是可以隨意設置的,如Hello等。設置標號用“:”符號,如“:Hello”,這時用GOTO
Hello命令將轉到“:Hello”所在的位置繼續執行批文件。
IF:條件判斷命令。這是一項很有用的批處理命令。
用法1:IF [NOT] EXIST 文件名 命令 [命令參數]
意義:如果[不]存在某個文件將執行某個命令。
用法2:IF [NOT] ERRORLEVEL 錯誤返回代號 命令 [命令參數]
意義:如果錯誤返回代號[不]大於或等於指定的代號將執行某個命令。
其中,ERRORLEVEL表示錯誤返回代號,很有用。對於很多DOS命令,由於執行的結果不同(如執行成功,執行失敗,或被用戶中斷等),這些命令會返回不同的代號,以表示不同的結果。IF
ERRORLEVEL命令就根據這個不同結果而產生的不同代號來執行不同的命令,通常用在某條命令之後。如IF ERRORLEVEL 1 ECHO
OK!表示如果當前的錯誤返回代號大於或等於1時將在屏幕上顯示“OK!”的字樣。
用法3:IF [NOT] 字符串1==字符串2 命令 [命令參數]
意義:當字符串1和字符串2[不]相等的時候執行某個命令。
PAUSE:暫停批文件的執行,並顯示“按任意鍵繼續”的字樣。
REM:添加註解。用於增加文件可讀性,將不被執行。也可以用::來代替。
SHIFT:在批文件中改變可替換參數的位置。
可替換參數是一種特殊的參數,只能用在批文件中。這些參數是由使用者在執行批處理命令時輸入的。比如,我們執行DIR /S
/W命令,其中DIR是命令名,/S和/W是它的執行參數。在批文件中,這些命令參數將被分別賦予到可替換參數中,如/S就成的%1,/W就可了%2,以至類推,而命令本身則被賦予%0中。批文件就是利用可替換參數對執行時輸入的參數來進行操作的。比如現在有個批處理文件叫MYFILE.BAT,在命令行下執行MYFILE.BAT
YES,於是%0的值就是MYFILE.BAT,%1的值就是“YES”,可以在此批文件中用IF等命令判斷出%1等參數的值,然後根據這些值的不同執行不同的操作,如IF
"%1"=="YES" GOTO YES。
SHIFT命令不帶任何參數,執行結果是將%0的值換成原%1的值,而原%1的值變成的原%2的值,以此類推。注意它的不可逆轉性。因爲批處理文件執行時的運行參數可能很多,可能會超過10個,而可替換參數只能從%0到%9,若想取得%9以後的參數值,只能使用SHIFT命令。這時,整個參數列將向前推。
   
以上是DOS的自帶批處理命令,可以看出,這些命令是非常少的,若要編寫較複雜的程序,用以上的命令顯然不可能實現。這時就需要其它實用的批處理工具了,著名且實用的有TESTIF,STRING,ASET,BATCHMAN,WBAT等,均可在“DOS軟件分類下載”中的“腳本工具”中下載。在批處理文件中使用以上的工具可以實現非常強大的功能,甚至可以完成許多高級語言程序的功能。所以,如果您想編者按寫批處理文件的話,它們是您不錯的選擇,不僅有詳細的文檔,而且還在不斷發展中。
    下面就要談批處理文件的製作了。其實製作批處理文件並不難,只要掌握了方法就行了。隨着您操作次數的增多,您會覺得越來越容易的。
    首先使用一個文本編輯器,如DOS自帶的EDIT命令或其它的編輯工具,如PEDIT等新建一個空白文件(當然,用COPY
CON命令直接創建也行),然後在其中根據您想完成的功能輸入批處理命令。如果您只是想執行一些的DOS命令的集合,則按順序在每行輸入一個DOS命令就行了。但如果您是想完成一些更復雜的操作,就需要以上的批處理命令或上述的批處理工具了。
    以下是我原來所編的一個從1%慢慢增加到100%的批處理小程序,大家可以用作參考,以編寫自己的程序。
@echo off
break off
cls
set c=0
writext 10 1 Wait...
be delay 4
:loop
writext 10 9 %c%%%?completed.
count c
if not %c%==101 goto loop
echo.
set c=
kpush /f
break on
   
其中,我用到了WRITEXT,COUNT,BE和KPUSH,這些都是批處理工具。WRITEXT是ECHO的增強工具,可以自定義顯示的效果。COUNT是變量的計算工具,如原來C的值爲1,執行COUNT
C後C的值就爲2。BE是個強大的批處理增強工具,在Norton Utilties 8.0中帶有。KPUSH是鍵盤緩衝工具。
    總之,利用批處理命令和批處理增強工具,我們可以編出許多強大的批處理文件來,大家不妨一試。許多批處理工具可以在“腳本工具”中下載。
DOS在WINDOWS下的優勢
大家現在已能熟練地操作WINDOWS了,初學者根本不知道“DOS”是何物?但是一旦系統崩潰,又要回到“原始社會”--DOS。
   其實在DOS下的一些命令是WINDOWS下無可比擬的(太誇張了些^-^)。首先介紹幾個DOS下的命令:
   一、delete(DEL)。大家一定要說這不是刪除命令嗎?對!就是刪除命令。它能刪除在WINDOWS下無法刪除的文件。比如:Win386.swp(虛擬內存),定期刪除可減少硬盤碎片,刪除後重啓自動可生成Win386.swp。然而在WINDOWS下用鼠標左鍵單擊選定,按鍵盤上的Delete,彈出確認框:確實要把“Win386.swp”放入回收站嗎?單擊確定。又彈出一錯誤框:無法刪除WIN386:訪問被拒絕,請確定磁盤未滿或未被寫保護,而且文件未被使用。各位讀者是不是遇到這種情況?
   二、doskey(鎖定命令)。大家一定對FORMAT很害怕吧!病毒一侵入,它就給您FORMAT,WU、WU、WU……後悔已來不及了,只得重裝系統,真麻煩!現在您不必害怕!在DOS下鍵入如下命令以C:\doskey FORMAT=Bad Command or file name!並回車就可以了,當“病毒”或“人毒”格式化您的硬盤時,系統將會顯示:“Bad command or file name!”。那麼您又要問我:我自己想格式化的時候怎麼辦?沒關係!只要鍵入“C:\doskey FORMAT=”並回車,就可以了^-^
   三、FC(它是比較兩個文件差別的命令)。命令格式:fc 原文件名 目標文件名 保存結果。例:fc c:\1.reg c:\2.reg>c:\3.txt(其中1.reg、2.reg是註冊表文件,3.txt是文本文件),使用這個命令可以比較註冊表,也可以其他文件(註冊表:就是在開始\運行並回車)。這樣在安裝共享軟件的時候,就知道“它”往註冊表中裝什麼了,(安裝前先導出註冊表,安裝後再導出註冊表,並用FC命令比較),這樣對某些搞特殊工作的人就方便多了,只能點到爲止了^-^
   四、bat(批處理命令),它在WINDOWS下同樣有它的功效。有一些朋友是不是在上網的時候,經常忘了開防火牆?!如果在啓動WINDOWS時直接啓動,浪費了系統資源,並不是每次都上網;如果忘了開防火牆,病毒、***就乘虛而入了,作者本人也有一次教訓),能不能兩全齊美呢?只要當上網時防火牆自動打開(有一些軟件能使兩個軟件捆綁在一起,只要啓動一個軟件,另一個軟件自動啓動),自力更生、艱苦創業是中華民族的美德嗎!以本人把天網防火牆和電子郵件捆綁一起爲例,首先新建記事本(文本文件)內容如下:
start C:\Progra~1\skynet\Firewall\snfw.exe
start C:\Progra~1\Outloo~1.EXE\MSIMN.exe
然後另存爲(菜單欄中文件\另存爲)電子郵件.bat(名字隨便起,只要後綴是.bat就行了)然後執行一下,是不是成功了,以後收發電子郵件,只要啓動這個批處理文件就可以了(也可在桌面或任務欄建立快捷方式,是不是更方便了)。這裏需要指出的是:DOS下不支持長文件名,最多8個字節,所以Program Files應寫成Progra~1。命令格式即爲start 文件存放路徑。
怎麼樣,DOS還是寶刀未老吧!!!
DOS中的小技巧DOS中的小技巧
經常使用DOS,筆者總結了幾條小技巧,特拿出來怡笑大方。
1.   批處理中用set設置dir的顯示方式
在批處理命令中加上c: \setdircmd =w/p/a,(三個參數可單獨使用)這樣只需鍵入c:
\dir,就可達到分屏五行顯示,同時顯示隱含目錄與文件的效果。若想取消此顯示方式,只需鍵入c: \setdircmd
=<--(<――代表回車)同理使用set還可以使其他命令簡化。
2.   DOS下edit的使用技巧
使用過wps的人都覺得其中“定義塊”的功能很好用,其實dos下的edit也能實現定義塊,並且還有快捷鍵可使用。先按住shift鍵,再用→/←方向鍵控制,shift
+home定義到行首,shift +end定義行行尾,shift +↑/↓定義上一行和下一行,shift +home
+ctrl定義到文件頭……(定義好的塊會形成亮帶)要想複製塊,則首先要定義好塊,然後按alt
+e選擇edit用↑/↓調到copy項,回車,將定義好的被複制項放到剪貼板中。再將光標移動至目標的位置,按alt
+e,選paste(粘貼),回車,剛剛被放至剪貼板的塊被複制到當前光標所在處。移動塊也可照此方法。
3.   用Type命令拷貝加密盤
用DOS下的Type命令可以拷貝某些用copy及pctools無法複製的加密盤上的信息,方法是,先記下目標盤上所有文件的文件名的擴展名,然後在A:驅插入源盤,B:驅插入一張空盤,鍵入以下命令:A:
Type文件名>B:文件名將加密盤上的所有文件按此格式都Type到目標盤上,就形成一張與原加密盤一樣的盤了。
4.   Type的另一妙用——獲得未知病毒代碼
用Type可以巧妙的利用病毒多感染com和exe這一特性,獲得未知病毒代碼。現在C盤根目錄下建立兩個零字節的Vir文件,擴展名分別用com和exe,方法如下:c:
\>type nul >vir.com,c:\>type nul
>vir.exe,根據病毒侵入的特性,一旦染毒,擴展名爲com和exe的文件的字節數便會增加。所增加的字節便是感染病毒的全部代碼,從而進行有針對的殺毒措施,如將病毒代碼取適當的一段拷入一些殺毒軟件的virus.dat等病毒代碼文件中,就可以自己實現對殺毒軟件的升級,非常及時。
XP中的增強DOS命令
“廉頗老矣,尚能飯否”,這是很多人對Windows操作系統下的DOS 的一種偏見,其實DOS在系統維護工作中有着重要的作用。自從微軟公司推出Windows XP操作系統後, 人們熱情的投入到Win XP的懷抱中去關注它、瞭解它、使用它,卻很少有人注意到Win XP附帶的DOS操作環境,實際上Win XP已經增加了部分DOS命令的功能,所謂“老樹開新花”,下面讓我們一道來感受Win XP下DOS的功能變化。
◆命令:DIR,列文件、目錄
增加參數:/-C
參數說明:DIR列文件、目錄時顯示的文件大小,其數值以千爲單位進行分隔,使用此參數即“DIR/-C”將取消顯示中的分隔符,以滿足部分人的視覺習慣。
增加參數:/Q
參數說明:Windows是多用戶操作系統,使用此參數即“DIR /Q”列文件、目錄時,將顯示出文件、目錄的用戶屬性。
增加參數:/T:C、/T:A、/T:W
參數說明:使用此參數即“DIR/T:C”、“DIR/T:A”、“DIR/T:W”分別顯示文件、目錄的創建時間、上次訪問時間和上次修改時間。
增加參數:/X
參數說明:使用此參數即“DIR/X”列文件、目錄時,會對長文件名同時顯示“8.3”格式的文件名。
◆命令:CD,改變目錄
增加參數:/D
參數說明:此參數的作用是快速改變當前目錄,比如當前目錄是C:\Windows,使用命令“CD/D E:\Tools”可快速切換到E:\Tools目錄下。注:只有在Win XP的“運行”文本框中輸入“CMD”得到的DOS窗口中才能使用此參數。
◆命令:MD,建立目錄
功能說明:此命令並未增加參數,但是增強了功能,它可一次建立多級子目錄, 例如使用命令“MD AA\BB\CC\DD”將一次性創建AA、BB、CC、DD四級子目錄。而在老版本的DOS中,若不存在AA子目錄,便無法直接建立AA下的BB等深層子目錄。
◆命令:RD,刪除目錄
增加參數:/S
參數說明:使用此參數即“RD/S”用於刪除目錄樹,即刪除目錄及目錄下的所有子目錄和文件,相當於以前版本中的DELTREE命令。
增加參數:/Q
參數說明:使用上面的/S參數刪除目錄樹時,系統會要求用戶確認是否真的要刪除。若同時使用/Q參數即“RD/S /Q”,在進行刪除操作時將取消確認,相當於DELTREE命令的/Y參數。
◆命令:DEL,刪除文件或目錄
增加參數:/F
參數說明:使用此參數即“DEL/F”可刪除只讀文件。
增加參數:/S、/Q
參數說明:使用此參數即“DEL/S”作用與“RD/S”完全相同,即刪除目錄及目錄下的所有子目錄和文件。同時使用參數/Q,可取消刪除操作時的系統確認。
增加參數:/A
參數說明:刪除指定屬性或指定屬性以外的文件,/AR、/AH、/AS、/AA分別表示刪除只讀、隱藏、系統、存檔文件,/A-R、/A-H、/A-S、/A-A表示刪除除只讀、隱藏、系統、存檔以外的文件。例如“DEL/AR *.*”表示刪除當前目錄下所有隻讀文件,“DEL/A-S *.*”表示刪除當前目錄下除系統文件以外的所有文件。
◆命令:ATTRIB,更改文件或目錄的屬性
增加參數:/D
參數說明:在Win XP中我們不能把文件或文件夾設置爲系統屬性,只能設爲只讀、隱藏或存檔屬性。而帶參數/D使用ATTRIB命令可以對文件的所有屬性進行設定,設定時必須與參數/S同時使用。例如“ATTRIB /S /D +S D:\Study”,作用是將D:\Study文件夾設置爲系統文件夾。
◆命令:format,格式化磁盤
增加參數:/FS:filessystem
參數說明:按指定文件系統類型(FAT、FAT32、NTFS)格式化磁盤,例如“format /FS:NTFS”。
◆命令:DATE、TIME,顯示系統日期和時間
增加參數:/T
參數說明:使用此參數即“DATE/T”、“TIME/T”將只顯示當前日期和時間,而不必輸入新日期和時間。
 
--------------------------------------------------------------------------------
長用的一些DOS命令
一索引:
ATTRIB
CD
CLS
COPY
DATE
DEL
DIR
DISKCOMP
DISKCOPY
ECHO
FC
FIND
FORMAT
LABEL
MD
MOVE
PROMPT
TIME
TREE
VER
XCOPY
NETSTAT
REM
REN
VOL
TYPE
ATTRIB:顯示或更改文件屬性。
ATTRIB [+R│-R] [+A│-A] [+S│-S] [+H│-H] [[drive:] [path] filename] [/S] [/D]
+ 設置屬性。
- 清除屬性。
R 只讀文件屬性。
A 存檔文件屬性。
S 系統文件屬性。
H 隱藏文件屬性。
[drive:][path][filename]
指定要處理的文件屬性。
/S 處理當前文件夾及其子文件夾中的匹配文件。
/D 也處理文件夾。
CD:顯示當前目錄名或改變當前目錄。
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"
在擴展功能停用的情況下,您必須鍵入以上命令。
CLS:清除屏幕。
COPY:將一份或多份文件複製到另一個位置。
COPY [/D] [/V] [/N] [/Y │ /-Y] [/Z] [/A │ /B ] source [/A │ /B]
[+ source [/A │ /B] [+ ...]] [destination [/A │ /B]]
source 指定要複製的文件。
/A 表示一個 ASCII 文本文件。
/B 表示一個二進位文件。
/D 允許解密要創建的目標文件
destination 爲新文件指定目錄和/或文件名。
/V 驗證新文件寫入是否正確。
/N 複製帶有非 8dot3 名稱的文件時,
儘可能使用短文件名。
/Y 不使用確認是否要改寫現有目標文件
的提示。
/-Y 使用確認是否要改寫現有目標文件
的提示。
/Z 用可重新啓動模式複製已聯網的文件。
命令行開關 /Y 可以在 COPYCMD 環境變量中預先設定。
這可能會被命令行上的 /-Y 替代。除非 COPY
命令是在一個批文件腳本中執行的,默認值應爲
在改寫時進行提示。
要附加文件,請爲目標指定一個文件,爲源指定
數個文件(用通配符或 file1+file2+file3 格式)。
DATE:顯示或設置日期。
DATE [/T │ date]
顯示當前日期設置和輸入新日期的提示,請鍵入
不帶參數的 DATE。要保留現有日期,請按 ENTER。
如果命令擴展名被啓用,DATE 命令會支持 /T 開關;
該開關指示命令只輸出當前日期,但不提示輸出新日期。
DEL:刪除一個或數個文件。
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 開關的顯示句法會顛倒,即只顯示已經
刪除的文件,而不顯示找不到的文件。
DIR:
DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N]
[/O[[:]sortorder]] [/P] [/Q] [/S] [/T[[:]timefield]] [/W] [/X] [/4]
[drive:][path][filename]
指定要列出的驅動器、目錄和/或文件。
/A 顯示具有指定屬性的文件。
attributes D 目錄 R 只讀文件
H 隱藏文件 A 準備存檔的文件
S 系統文件 - 表示“否”的前綴
/B 使用空格式(沒有標題信息或摘要)。
/C 在文件大小中顯示千位數分隔符。這是默認值。用 /-C 來
停用分隔符顯示。
/D 跟寬式相同,但文件是按欄分類列出的。
/L 用小寫。
/N 新的長列表格式,其中文件名在最右邊。
/O 用分類順序列出文件。
sortorder N 按名稱(字母順序) S 按大小(從小到大)
E 按擴展名(字母順序) D 按日期/時間(從先到後)
G 組目錄優先 - 顛倒順序的前綴
/P 在每個信息屏幕後暫停。
/Q 顯示文件所有者。
/S 顯示指定目錄和所有子目錄中的文件。
/T 控制顯示或用來分類的時間字符域。
timefield C 創建時間
A 上次訪問時間
W 上次寫入的時間
/W 用寬列表格式。
/X 顯示爲非 8dot3 文件名產生的短名稱。格式是 /N 的格式,
短名稱插在長名稱前面。如果沒有短名稱,在其位置則
顯示空白。
/4 用四位數字顯示年
可以在 DIRCMD 環境變量中預先設定開關。通過添加前綴 - (破折號)
來替代預先設定的開關。例如,/-W。
DISKCOMP:比較兩張軟盤的內容。
DISKCOMP [drive1: [drive2:]]
DISKCOPY:把一張軟盤的內容複製到另一張。
DISKCOPY [drive1: [drive2:]] [/V]
/V 校驗信息複製得是否正確。
兩張軟盤的類型必須相同。
您可以爲 drive1 和 drive2 指定同樣的驅動器。
ECHO:顯示信息,或將命令回顯打開或關上。
ECHO [ON │ OFF]
ECHO [message]
要顯示當前回顯設置,鍵入不帶參數的 ECHO。
FC:比較兩個文件或兩個文件集並顯示它們之間的不同
FC [/A] [/C] [/L] [/LBn] [/N] [/OFF[LINE]] [/T] [/U] [/W] [/nnnn]
[drive1:][path1]filename1 [drive2:][path2]filename2
FC /B [drive1:][path1]filename1 [drive2:][path2]filename2
/A 只顯示每個不同處的第一行和最後一行。
/B 執行二進制比較。
/C 不分大小寫。
/L 將文件作爲 ASCII 文字比較。
/LBn 將連續不匹配的最大值設爲指定
的行數。
/N 在 ASCII 比較上顯示行數。
/OFF[LINE] 不要跳過帶有脫機屬性集的文件。
/T 不要將 tab 擴充到空格。
/U 將文件作爲 UNICODE 文字文件比較。
/W 爲了比較而壓縮空白(tab 和空格)。
/nnnn 指定不匹配處後必須連續匹配的行數。
[drive1:][path1]filename1
指定要比較的第一個文件或第一個文件集。
[drive2:][path2]filename2
指定要比較的第二個文件或第二個文件集。
FIND:在文件中搜索字符串。
FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] "string" [[drive:][path]filename[ ...]]
/V 顯示所有未包含指定字符串的行。
/C 僅顯示包含字符串的行數。
/N 顯示行號。
/I 搜索字符串時忽略大小寫。
/OFF[LINE] 不要跳過具有脫機屬性集的文件。
"string" 指定要搜索的文字串,
[drive:][path]filename
指定要搜索的文件。
如果沒有指定路徑,FIND 將搜索鍵入的或者由另一命令產生的文字。
FORMAT:格式化磁盤。
FORMAT volume [/FS:file-system] [/V:label] [/Q] [/A:size] [/C] [/X]
FORMAT volume [/V:label] [/Q] [/F:size]
FORMAT volume [/V:label] [/Q] [/T:tracks /N:sectors]
FORMAT volume [/V:label] [/Q]
FORMAT volume [/Q]
volume 指定驅動器(後面跟一個冒號)、裝入點
或卷名。
/FS:filesystem 指定文件系統類型(FAT、FAT32 或 NTFS)。
/V:label 指定卷標。
/Q 執行快速格式化。
/C 僅適於 NTFS: 默認情況下,將壓縮在該新建捲上
創建的文件。
/X 如果必要,先強制卸下卷。那時,該卷所有
已打開的句柄不再有效。
/A:size 替代默認配置單位大小。極力建議您在一般狀況下使用
默認設置。
NTFS 支持 512、1024、2048、4096、8192、16K、32K、
64K。
FAT 支持 512、1024、2048、4096、8192、16K、32K、
64k,(128k、256k 用於大於 512 字節的扇區) 。
FAT32 支持 512、1024、2048、4096、8192、16k、32k、
64k,(128k 、256k 用於大於 512 字節的扇區)。
注意 FAT 及 FAT32 文件系統對捲上的羣集數量有以下限制:
FAT: 羣集數量 <= 65526
FAT32: 65526 < 羣集數量 < 4177918
如果判定使用指定的羣集大小無法滿足以上需求,格式
化將立即停止。
NTFS 壓縮不支持大於 4096 的分配單元。
/F:size 指定要格式化的軟盤大小(1.44)
/T:tracks 爲磁盤指定每面磁道數。
/N:sectors 指定每條磁道的扇區數。
LABEL:創建、更改或刪除磁盤的卷標。
LABEL [drive:][label]
LABEL [/MP] [volume] [label]
drive: 指定驅動器名。
label 指定卷標籤。
/MP 指定卷應該被當作安裝點或卷名。
volume 指定驅動器(後面跟一個冒號)、裝入點
或卷名。如果指定了卷名,/MP 標誌則不必要。
MD:創建目錄。
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。
MOVE:移動文件並重命名文件和目錄。
要移動至少一個文件:
MOVE [/Y │ /-Y] [drive:][path]filename1[,...] destination
要重命名一個目錄:
MOVE [/Y │ /-Y] [drive:][path]dirname1 dirname2
[drive:][path]filename1 指定您想移動的文件位置和名稱。
destination 指定文件的新位置。目標可包含一個驅動器號
和冒號、一個目錄名或組合。如果只移動一個文件
並在移動時將其重命名,您還可以包括文件名。
[drive:][path]dirname1 指定要重命名的目錄。
dirname2 指定目錄的新名稱。
/Y 取消確認改寫一個現有目標文件的提示。
/-Y 對確認改寫一個現有目標文件發出提示。
命令行開關 /Y 可以出現在 COPYCMD 環境變量中。這可以用命令行上
的 /-Y 替代。默認值是,除非 MOVE 命令是從一個批腳本內
執行的,改寫時都發出提示。
PROMPT:更改命令提示符。
PROMPT [text]
text 指定新的命令提示符。
提示符可以由普通字符及下列特定代碼組成:
$A & (短 and 符號)
$B │ (管道)
$C ( (左括弧)
$D 當前日期
$E Escape code (ASCII 碼 27)
$F ) (右括弧)
$G > (大於符號)
$H Backspace (擦除前一個字符)
$L < (小於符號)
$N 當前驅動器
$P 當前驅動器及路徑
$Q = (等號)
$S (空格)
$T 當前時間
$V 版本號
$_ 換行
$$ $ (貨幣符號)
如果命令擴展名被啓用,PROMPT 命令會支持下列格式化字符:
$+ 根據 PUSHD 目錄堆棧的深度,零個或零個以上加號(+)字符;
每個被推的層有一個字符。
$M 如果當前驅動器不是網絡驅動器,顯示跟當前驅動器號或
空字符串有關聯的遠程名。
TIME:顯示或設置系統時間。
TIME [/T │ time]
顯示當前時間設置和輸入新時間的提示,請鍵入
不帶參數的 TIME。要保留現有時間,請按 ENTER。
如果命令擴展名被啓用,DATE 命令會支持 /T 命令行開關;該命令行開關告訴
命令只輸出當前時間,但不提示輸出新時間。
TREE:以圖形顯示驅動器或路徑的文件夾結構。
TREE [drive:][path] [/F] [/A]
/F 顯示每個文件夾中文件的名稱。
/A 使用 ASCII 字符,而不使用擴展字符。
VER:顯示 DOS / Windows 版本。
XCOPY:複製文件和目錄樹。
XCOPY source [destination] [/A │ /M] [/D[:date]] [/P] [/S [/E]] [/V] [/W]
[/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/U]
[/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z]
[/EXCLUDE:file1[+file2][+file3]...]
source 指定要複製的文件。
destination 指定新文件的位置和/或名稱。
/A 只複製有存檔屬性集的文件,
但不改變屬性。
/M 只複製有存檔屬性集的文件,
並關閉存檔屬性。
/D:m-d-y 複製在指定日期或指定日期以後改變的文件。
如果沒有提供日期,只複製那些源時間
比目標時間新的文件。
/EXCLUDE:file1[+file2][+file3]...
指定含有字符串的文件列表。如果有任何
字符串與要被複制的文件的絕對路徑
相符,那個文件將不會得到複製。
例如,指定如 \obj\ 或 .obj 的字符串會排除
目錄 obj 下面的所有文件或帶有
.obj 擴展名的文件。
/P 創建每個目標文件前提示。
/S 複製目錄和子目錄,除了空的。
/E 複製目錄和子目錄,包括空的。
與 /S /E 相同。可以用來修改 /T。
/V 驗證每個新文件。
/W 提示您在複製前按鍵。
/C 即使有錯誤,也繼續複製。
/I 如果目標不存在,又在複製一個以上的文件,
則假定目標一定是一個目錄。
/Q 複製時不顯示文件名。
/F 複製時顯示完整的源和目標文件名。
/L 顯示要複製的文件。
/G 允許將沒有經過加密的文件複製到
不支持加密的目標。
/H 也複製隱藏和系統文件。
/R 改寫只讀文件。
/T 創建目錄結構,但不復制文件。不
包括空目錄或子目錄。/T /E 包括
空目錄和子目錄。
/U 只複製已經存在於目標中的文件。
/K 複製屬性。一般的 Xcopy 會重設只讀屬性。
/N 用生成的短名複製。
/O 複製文件所有權和 ACL 信息。
/X 複製文件審覈設置(隱含 /O)。
/Y 禁止提示以確認改寫一個
現存目標文件。
/-Y 導致提示以確認改寫一個
現存目標文件。
/Z 用重新啓動模式複製網絡文件。
使用批處理文件--常用命令
echo、@、call、pause、rem 是批處理文件最常用的幾個命令,我們就從他們開始學起。 echo 表示顯示此命令後的字符
echo off 表示在此語句後所有運行的命令都不顯示命令行本身
@ 與echo off相象,但它是加在其它命令行的最前面,表示運行時不顯示命令行本身。
call 調用另一條批處理文件(如果直接調用別的批處理文件 ,執行完那條文件後將無法執行當前文件後續命令)
pause 運行此句會暫停,顯示Press any key to continue... 等待用戶按任意鍵後繼續
rem 表示此命令後的字符爲解釋行,不執行,只是給自己今後查找用的
  例:用edit編輯a.bat文件,輸入下列內容後存盤爲c:\a.bat,執行該批處理文件後可實現:將根目錄中所有文件寫入 a.txt中,啓動UCDOS,進入WPS等功能。
  批處理文件的內容爲:         文件表示:
    echo off            不顯示命令行
    dir c:\*.* >a.txt       將c盤文件列表寫入a.txt
    call c:\ucdos\ucdos.bat    調用ucdos
    echo 你好            顯示"你好"
    pause              暫停,等待按鍵繼續
    rem 使用wps           註釋將使用wps
    cd ucdos            進入ucdos目錄
    wps               使用wps  
  批處理文件中還可以像C語言一樣使用參數,這隻需用到一個參數表示符%。
   %表示參數,參數是指在運行批處理文件時在文件名後加的字符串。變量可以從 %0到%9,%0表示文件名本身,字符串用%1到%9順序表示。
  例如,C:根目錄下一批處理文件名爲f.bat,內容爲 format %1
  則如果執行C:\>f a:    則實際執行的是format a:
  又如C:根目錄下一批處理文件的名爲t.bat,內容爲 type %1 type %2
  那麼運行C:\>t a.txt b.txt 將順序地顯示a.txt和b.txt文件的內容
if goto choice for 是批處理文件中比較高級的命令,如果這幾個你用得很熟練,你就是批處理文件的專家啦。
if 表示將判斷是否符合規定的條件,從而決定執行不同的命令。 有三種格式:
1、if "參數" == "字符串"  待執行的命令
參數如果等於指定的字符串,則條件成立,運行命令,否則運行下一句。(注意是兩個等號)
如if "%1"=="a" format a:
2、if exist 文件名  待執行的命令
如果有指定的文件,則條件成立,運行命令,否則運行下一句。如if exist config.sys edit config.sys
3、if errorlevel 數字  待執行的命令
如果返回碼等於指定的數字,則條件成立,運行命令,否則運行下一句。如if errorlevel 2 goto x2  DOS程序運行時都會返回一個數字給DOS,稱爲錯誤碼errorlevel或稱返回碼
goto 批處理文件運行到這裏將跳到goto 所指定的標號處, 一般與if配合使用。 如:
goto end
:end
echo this is the end
標號用 :字符串 表示,標號所在行不被執行
choice 使用此命令可以讓用戶輸入一個字符,從而運行不同的命令。使用時應該加/c:參數,c:後應寫提示可輸入的字符,之間無空格。它的返回碼爲1234……
如: choice /cme defrag,mem,end
將顯示
defrag,mem,end[D,M,E]?
例如,test.bat的內容如下:
@echo off
choice /cme defrag,mem,end
if errorlevel 3 goto defrag 應先判斷數值最高的錯誤碼
if errorlevel 2 goto mem
if errotlevel 1 goto end
efrag
c:\dos\defrag
goto end
:mem
mem
goto end
:end
echo good bye
此文件運行後,將顯示 defrag,mem,end[D,M,E]? 用戶可選擇d m e ,然後if語句將作出判斷,d表示執行標號爲defrag的程序段,m表示執行標號爲mem的程序段,e表示執行標號爲end的程序段,每個程序段最後都以goto end將程序跳到end標號處,然後程序將顯示good bye,文件結束。
for 循環命令,只要條件符合,它將多次執行同一命令。
格式FOR [%%f] in (集合) DO [命令]
只要參數f在指定的集合內,則條件成立,執行命令
如果一條批處理文件中有一行:
for %%c in (*.bat *.txt) do type %%c
含義是如果是以bat或txt結尾的文件,則顯示文件的內容。
DOS在啓動會自動運行autoexec.bat這條文件,一般我們在裏面裝載每次必用的程序,如: path(設置路徑)、smartdrv(磁盤加速)、 mouse(鼠標啓動)、mscdex(光驅連接)、 doskey(鍵盤管理)、set(設置環境變量)等。
  如果啓動盤根目錄中沒有這個文件,電腦會讓用戶輸入日期和時間。
  例如,一個典型的autoexec.bat內容如下:
@echo off                     不顯示命令行
prompt $p$g                    設置提示符前有目錄提示
path c:\dos;c:\;c:\windows;c:\ucdos;c:\tools    設置路徑
lh c:\dos\doskey.com                加載鍵盤管理
lh c:\mouse\mouse.com               加載鼠標管理
lh c:\dos\smartdrv.exe               加載磁盤加速管理
lh c:\dos\mscdex /S /D:MSCD000 /M:12 /V      加載CD-ROM驅動
set temp=c:\temp                  設置臨時目錄
10.for 命令
for 命令是一個比較複雜的命令,主要用於參數在指定的範圍內循環執行命令。
在批處理文件中使用 FOR 命令時,指定變量請使用 %%variable
for {%variable|%%variable} in (set) do command [ CommandLineOptions]
%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-
檢查以 [drive:]path 爲根的目錄樹,指向每個目錄中的
FOR 語句。如果在 /R 後沒有指定目錄,則使用當前
目錄。如果集僅爲一個單點(.)字符,則枚舉該目錄樹。
FOR /L %variable IN (start,step,end) DO command [command-para
該集表示以增量形式從開始到結束的一個數字序列。
因此,(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
FOR /F ["options"] %variable IN ("string") DO command
FOR /F ["options"] %variable IN ('command') DO command
或者,如果有 usebackq 選項:
FOR /F ["options"] %variable IN (file-set) DO command
FOR /F ["options"] %variable IN ("string") DO command
FOR /F ["options"] %variable IN ('command') DO command
filenameset 爲一個或多個文件名。繼續到 filenameset 中的
下一個文件之前,每份文件都已被打開、讀取並經過處理。
處理包括讀取文件,將其分成一行行的文字,然後將每行
解析成零或更多的符號。然後用已找到的符號字符串變量值
調用 For 循環。以默認方式,/F 通過每個文件的每一行中分開
的第一個空白符號。跳過空白行。您可通過指定可選 "options"
參數替代默認解析操作。這個帶引號的字符串包括一個或多個
指定不同解析選項的關鍵字。這些關鍵字爲:
eol=c - 指一個行註釋字符的結尾(就一個)
DOS下聯網的方法
 隨着計算機和網絡的普及,計算機之間的聯網操作(如文件的傳輸,聊天等)顯得越來越重要了。既然DOS有這麼多的用戶,那麼如何用它來實現聯網呢?DR-DOS
7.xx中自帶聯網(包括局域網和TCP協議)的功能,可是我們大家常用的MS-DOS卻沒有。但是,並不是沒有辦法,只是需要一些附加的軟件。比較好的有Netware
Lite 1.x和Microsoft Network Client 3.0(均可在本站的“網絡工具”中下載),下面以後者爲例,講述一下局域網的實現方法。
    首先在需要聯網的計算機中安裝Microsoft Network Client
3.0(後文簡稱MSCLIENT),安裝中輸入各自的工作組,計算機名和IP地址,以及用戶名和密碼,並在列表中選擇安裝的網卡的型號。如果列表中沒有您的網卡的話,則需要網卡自帶的驅動程序,通常在一張軟盤中,也有可能在光盤中。當它提示輸入OEM盤的時候,您就插入網卡的驅動程序磁盤,然後輸入合適的路徑。由於各網絡系統所需的網卡驅動程序並不一樣,而對於MSCLIENT一般則選擇驅動盤中的NDIS2或MSCLIENT文件夾,如A:\MSCLIENT。只要正確的話,它就會進行自動安裝了。至於網絡協議,一般只要有NetBEUI和TCP/IP協議就夠了,裝太多會減慢網絡的速度。安裝完成後,MSCLIENT會自動將網絡啓動命令放入AUTOEXEC.BAT中,重新啓動計算機後就會發現網絡自動啓動了。當系統提示輸入用戶名和密碼時,輸入剛纔設置的就可以了。這時,網絡就開始運轉了,比如您想查看當前工作組下的所有計算機,可輸入NET
VIEW命令。
   
不過,這時候大家都還是客戶機,還沒有服務器,必須安裝服務器纔可以共享文件。安裝後可用NETSHARE命令設置共享路徑,如將D盤設爲共享,如果必要的話,還可以設置密碼,以免非法訪問。一旦設好服務器和共享,客戶機就可以訪問該計算機上的資源了。比如:NET
USE E:
\\PC\C命令就會將名稱爲PC的計算機上的共享名爲C的驅動器(或文件夾)重定向到E盤,此時遠程計算機上的內容就可以像本地計算機那樣訪問了。不過還有一點很重要,那就是要將MSCLIENT的文件和打印機的共享功能的設置打開,方法是用EDIT等文本編輯器打開MSCLIENT文件夾中的SYSTEM.INI,將[network]項中的filesharing和printsharing的值全部改爲yes,保存並退出後就可以使用文件和打印機的共享功能了。
    如果想將使用DOS和使用Windows的計算機相聯,也是完全可以的。由於Windows 3.11 for Workgroups,Windows
9x以及Windows NT/2K/XP中採用的是一種叫做“Microsoft Windows Network”的網絡,和DOS下的Microsoft
Network Client
3.0是兼容的,所以它們之間可以實現非常完好的互相訪問,就像DOS與DOS之間,或Windows與Windows之間的網絡一樣。不過要注意的是,若想要使用DOS的計算機訪問使用Windows
NT/2K/XP的計算機,則一定要在Windows NT/2K/XP中設置DOS計算機的用戶帳戶,否則無法訪問。
   Microsoft Network Client 3.0中有許多非常實用的命令,如PING等,如果您想知道這些命令及其用法,請見“DOS文章”欄目。
    除了使用MSCLIENT以外,還可以使用Netware等工具聯網。以Netware
Lite爲例,安裝完後直接執行STARTNET.BAT即可自動調入對等網(包括服務器)。這時可用它自帶的NET命令進行全屏幕的網絡管理,也可以用命令行方式,比如NET
MAP命令可重定向到對方的計算機(當然需先設置共享)。更簡單的方法是,在加載了IPX協議(IPXODI.COM)後,直接利用IPXCOPY.EXE命令(可在“DOS軟件”中下載)進行文件傳輸,而不用啓動服務器。方法是在一臺計算機中用IPXCOPY命令啓動接收器,在另一臺計算機上用“IPXCOPY
文件名”命令進行傳輸,其中文件名可爲通配符,也可用/S選項以指定包括子文件夾中的文件。當然還有其它的方法,這兒就不再介紹了。
   
以上談的是局域網的聯接方法,下面談談上Internet的方法。通常上網有兩種方式,一種是撥號上網,即通過調制解調器,另一種是通過網卡。因此,上網的方法也有兩種。不過共同點,就是它們都需要一個網絡瀏覽器。DOS下最好的圖形方式的瀏覽器是ARACHNE,功能十分強大,可在本站上下載。使用它進行撥號上網需要一個支持DOS的調制解調器(包括硬件的調製解制解調器或帶有DOS驅動程序的軟件調制解調器,也可以在Win9x的DOS窗口中使用),選擇設置屏幕中的“使用Modem上網”後,Arachne會對調制解調器每個可能所在的端口進行檢測,只要成功檢測到一個就可以使用了。然後輸入正確的電話號碼,用戶名及密碼,就可以進行撥號了。如果是通過網卡上網的話則需要此網卡的Packet驅動程序,注意必須安裝在地址0x60上,例如對於NE2000網卡可在DOS提示符下用NE2000
0x60命令進行安裝。在ARACHNE中的設置屏幕中選擇“使用網卡上網”,並選擇DHCP自動配置,只要網絡正常的話,就可以查看網頁了。關於ARACHNE瀏覽器的具體使用方法,可見“DOS文章”欄目。
   
當然,DOS下真正聯接到Internet還有許多種方法,如使用撥號適配器驅動程序(如DOSPPP),或者安裝了網卡的Packet驅動程序後,用WATTCP程序(如WGET,Lynx)等都可以實現網上資料的讀取。要想使用電子郵件,用Barebones
E-mail等程序就可以輕易實現收發電子郵件(需知道郵箱的POP3及SMTP服務器地址)。DOS下有關網絡的程序很多,這裏就不再詳述了。
DOS未公開命令與參數
DOS系統中有許多未公開的命令與參數。由於DOS的種類很多,所以下面僅以MS-DOS爲例,介紹一下常用命令中的未公開的命令與參數。
DOS未公開命令:
TRUENAME:用於顯示實際的路徑,對SUBST等命令很有用。
INSTALLHIGH:用在CONFIG.SYS中,將文件調入UMB。
LOGO和COMMENT:僅用在DOS7中的CONFIG.SYS中,用法未知。
DOS未公開參數:
COMMAND /F 使Fail作爲Abort,Retry,Fail中的默認選項。
COMMAND /D 在DOS5中是禁止AUTOEXEC.BAT自動執行;在6.0+版本中是禁止/F參數。
COMMAND /Z 顯示ERRORLEVEL(錯誤返回代碼)信息。
COMMAND /T 在DOS7.x中強制將COMMAND.COM永久性調入常規內存。
FORMAT /AUTOTEST 自動完成格式化過程。
FORMAT /BACKUP 自動完成格式化過程,並提示輸入卷標。
FORMAT /SELECT 只在磁盤上備份系統區數據,相當於MIRROR程序。
FORMAT /SELECT /U 將引導區和文件分配表用F6H填之。
FORMAT /Z:n 設置FAT32分區上的簇大小。
FDISK /MBR 重寫硬盤主引導記錄。
FDISK /CMBR drive 重寫指定驅動器上的主引導記錄。
FDISK /PRI:size 創建主分區。
FDISK /EXT:size 創建擴展分區。
FDISK /LOG:size 在擴展分區上創建邏輯驅動器。
FDISK /PRMT|/Q 提示行動/安靜模式。
FDISK /PARTN 將分區表信息保存到PARTSAV.FIL中。
FDISK /ACTOK 用於DOS7中,跳過完整性測試。
FDISK /FPRMT 用於DOS7中,自動採用FAT32,並跳過提示信息。
DOSKEY /APPEDIT 使DOSKEY也應用於其它程序(如DEBUG等)中。
DOSKEY /COMMAND和/PERMANENT和/SCRSIZE和/XHISTORY 用法未知。
SCANDISK /CLIP 用於DOS7中,將長文件名剪爲短文件名。
SCANDISK /NOLOST 用於DOS7中,不提示表面測試或丟失簇。
SCANDISK /NOUI和/TEXT 用於DOS7中,使用標準的DOS界面。
SCANDISK /MOUNT 相當於SCANDISK.INI中的Mount=Always。
SCANDISK /TIME 相當於SCANDISK.INI中的ScanTimeOut=On。
MEM /A或MEM /ALL 顯示HMA信息。
VER /R 顯示擴展的版本信息。
DIR /Z 用於DOS7中,不顯示長文件名。
DOS=SINGLE 用在DOS7中的CONFIG.SYS中,啓動單一模式的DOS。
DEVICE=HIMEM.SYS /Q 安靜模式。
DEVICE=EMM386.EXE NOTR 不要檢測Token Ring網絡適配器。
以上是MS-DOS中的未公開命令與參數,其中有些是比較實用的,大家不妨一試。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章