1. 程式人生 > >windows下dos下常用命令

windows下dos下常用命令

dos命令

dos下各種常見命令索引

▲ dir

▲ attrib

▲ cd

▲ copy

▲ xcopy

▲ del

▲ undelete

▲ deltree

▲ dos=high

▲ doskey

▲ emm386.exe

▲ fc

▲ format

▲ unformat

▲ interlnk

▲ intersvr

▲ memmaker

▲ memitem等

▲ mscdex

▲ msd

▲ prompt

▲ ramdrive

▲ subst

▲ mem

▲ "> < >> <<"工具

▲ move

▲ append

▲ call

▲ defrag

▲ device

一、DIR 命令的格式:

dir [D:][PATH][NAME][[/A][:attrib]][/o:[sorted][/s][/b][/l][/c[h]

(1)dir /a:attrib 預設包含所有檔案(系統檔案.隱含檔案)

attrib[:][h/-h]只顯示隱含檔案或非隱含檔案.

[r/-r]只顯示只讀檔案或非只讀檔案

[s/-s]只顯示系統檔案或非系統檔案

[a/-a]只顯示要歸檔檔案或非歸檔檔案

(2)/o[:]sorted:預設完全按字母順序,子目錄顯示在檔案之前

/o[n/-n]:按字母順序或按檔名順序/反向顯示

[e/-e]:按副檔名字母順序/反向顯示

[d/-d]:按時間順序/反向顯示

[s/-s]:按大小從大到小或/反向顯示

[g/-g]:按子目錄先於檔案或檔案先於子目錄

(3)/s 引數:對當前目錄及其子目錄中所有檔案進行列表

列名:dir /s/a/o:n c:/>PRN

將c盤上的所有子目錄和檔案按隸屬關係並根據子目錄和檔案字母順序列印輸出

(4)/B 引數:將只顯示檔名與副檔名

(5)/L 引數:將全部用小寫字母對檔案或子目錄進行列表

訓練:

dir /a 列當前目錄所有檔案(含隱含及系統檔案)

dir /ah 列隱含檔案(包含子目錄(隱含的) dir /a-h

dir /as 列系統檔案 dir /a-s

dir /ad 列子目錄 dir /a-d

dir /o 按字母順序

dir /B 只顯示檔名與副檔名

二、attrib [+r|-r] [+a|-a] [+s|-s] [+h|-h] [d: ] [name] [/s]

預設 attrib name 顯示檔案的(檔案)屬性

attrib io.sys (或子目錄)

shr c:/ io.sys 指定為系統(s) 隱含(h) 只讀(r)檔案

也可以attrib *.sys 顯示副檔名為sys的檔案屬性

引數 [+r|-r] 將檔案屬性設定或解除 只讀屬性

[+a|-a] 將檔案屬性設定或解除 歸檔屬性

[+h|-h] 將檔案屬性設定或解除 隱含屬性 (尤其對子目錄也起作用)

/s 引數 將當前及當前子目錄下的所有檔案均起作用

可以用來查詢檔案

例子:

attrib news86 列news86的文件屬性

attrib +r report.txt 設定為只讀 attrib -s -h record.txt

attrib +a a:*.*

attrib -a a:*.bak

xcopy a: b: /a 將A盤上的所有標誌為"歸檔"屬性的檔案拷到B盤

xcopy a: b: /m 將A盤上的所有檔案拷到B盤後並移去歸檔屬性

三、cd 介紹: cd...返回上二級目錄 "."代表當前目錄 "."代表父目錄

cd ../..返回到上級目錄的父目錄(祖目錄)

cd A:/ 將A盤的當前目錄改為根目錄

cd A:/xx 將A盤的當前目錄改為子目錄xx下

cd ../98 先返回父目錄,再進入父目錄下的98子目錄

cd ..返回到父目錄

cd/98 進入根目錄下的98子目錄

四、copy [/y][/-y][/v][ /B]

copy /y 不加提示,對所有檔案加以覆蓋

/-y 加以提示,對所有檔案 (yes或no提問 )

/v 拷貝以後加以校驗

/B 按二進位制進行顯示

copy w1.wps con/b 可以將wps檔案在螢幕上顯示,而不必進入wps狀態

copy ../98 將父目錄下的98子目錄下的所有檔案全拷到當前子目錄

copy ./97 噹噹前目錄下的97子目錄下檔案全部拷到當前目錄

copy . c:/ 將當前目錄下的所有檔案拷到c盤根目錄

. 意味著 *.* 檔案

copy nul a.abc 將a.abc 檔案清空(檔案長度改為0)

copy 檔名+con 向文字檔案中追加命令或內容

copy con 檔名 建立文字檔案(F6存檔退出)

copy con prn 檢測印表機的開關

五、xcopy命令

xcopy [source] [d:date] [/p] [/s] [/e] [/v] [/y]

xcopy [d:date] xcopy a:b:/ /d:08/18/98/s/v 拷貝98.08.18年後的檔案

xcopy [/p] 提示建立子目錄

xcopy [/s] 連帶子目錄一起拷貝. 注意:若目標盤上不存在此子目錄,而在目標

盤的結束符又不以"/"為結束,則將提示:

does destination specify a file name or directory name on the target

[f=file,d=directory]?

在目標盤上建立檔案[按下]還是建立子目錄[按下d] ?應選擇d鍵

xcopy[/v] 帶較驗

*:(1) xcopy 不拷貝系統和隱含檔案,應先予以修改屬性再拷貝

xcopy [/y] 覆蓋時是否有提示, /y 不帶提示

若省略目標盤或子目錄名,則拷貝到當前目錄下

六、 del /p

加/p 可以在刪除前是否提示

如del後加子目錄名,則將子目錄下所有檔案(隱含.系統.只讀檔案除外)全刪除,

加/p則可以確認.

七、undelete [name] /au

不加提示地將所有滿足條件的檔案恢復(能夠恢復的),並將首字母置成"#",若已

存在,則按"# % & 0 1 2-9 a-z"順序加上.

如:undelete *.dbf/au 將副檔名為"dbf"的檔案全恢復,並以"#"開頭,作為檔案

名, /list 僅列出可恢復的檔案,而不恢復

undelete /load 將undelete裝入記憶體

/unload 將undelete卸出記憶體

/s[drive]對指定驅動器進行監測管理

undelete/sc

將 undelete駐留記憶體,?並建立一個隱含的sentry 子目錄對c盤刪除的檔案進行

管理 undelete/ds 恢復

相應恢復命令可以用undelete即可完整恢復出文件名(非常完整)

最常用undelete *.*

deltree /y [drive:path]

deltree 刪除子目錄及檔案,儘管有些檔案是系統檔案或隱含檔案

它可以帶有萬用字元,帶有萬用字元時,它將刪除符合條件的檔案及子目錄

如:?undelete *.dbf/au 將副檔名為"dbf"的檔案全恢復,並以"#"開頭作為檔案

名.

/list 僅列出可恢復的檔案,而不作恢復操作.

undelete/load 將undelete 裝入記憶體.

/unload將undelete 卸出記憶體.

/s[drive] 對指定的驅動器進行監視管理.

undelete/sc 將undelete 駐留記憶體,並建立一個隱含的sentry子目錄對C盤刪除

的檔案進行管理.相應恢復命令可以用undelete/ds 即可完整恢復出文件名(很完善).

最常用的是undelete *.*

八、deltree /y [drive:path]

deltree 刪除子目錄及檔案,儘管有些檔案是系統或隱含的.

它可以帶有萬用字元,這時它將刪除符合條件的檔案或子目錄.

如:存在L1檔案,L2子目錄,L3檔案,L4子目錄

deltree L*.* 將刪除以上所有的檔案和子目錄,但在刪除前加以確認,若不刪除,

可以輸入"N".

/y 引數是在刪除時不加以確認就進行操作的.

它刪除的檔案可以用undelete恢復,?但不能恢復子目錄及其下的檔案,可以用特

殊工具.如NORTON 8.0 等.

若提前使用了undelete/s,?則可以在sentry子目錄下找到完整的檔案,但名已經

改變了.

九、dos=high[|low[umb|noumb]]

dos=high,umb 則dos將自身裝入高階記憶體(high)並能管理上位記憶體(umb).

noumb 則不管理上位記憶體.

在寫入dos=high及umb 前應裝入device=himem.sys

為了將程式或驅動程式裝入上位記憶體,必須使用dos=umb,可省出大部分常規記憶體.

可以在config.sys的任何位置寫上dos=high,umb

若顯示hma not avoiable 或 load down low 則表明不能使用高階記憶體.

十、doskey 記錄以前敲過的dos命令,可以用F7來顯示,用"↑↓"來選擇,用F9來輸入

選擇的命令號.

doskey/restall 重新裝入一次,以前的命令列撤消.

doskey/history 顯示記憶體中所有的命令,可以">"顯示到其它檔案中,縮寫"/H".

doskey dir=cls 則擊入dir等同於cls一樣.

doskey/macros 可顯示所有的巨集定義,可使用">"重定義到檔案中,可縮寫"/M".

doskey dir= 可撤消對dir 的巨集定義.

doskey p=dir$tdir*.exe/p$tdir c:/t$tdir c:/t$*

$t為命令的區分符,而$*為命令的結束符

doskey/insert(overstrike)?在重新輸入命令時,對舊命令的修改是插入還是覆

蓋狀態(預設).

十一、emm386.exe

提供對擴充套件記憶體的管理,使應用程式象使用常規記憶體一樣能夠使用它.

常見的用法是 在config.sys 中

device=c:/dos/himem.sys

device=c:/dos/emm386.exe ram

d=64 將DMA 記憶體數量設定為64K

noems 提供對上位記憶體的訪問,但不提供對擴充套件記憶體的訪問.

應注意的是在windows中最好不要用它,因為windows本身有對擴充套件記憶體進行管理

的程式.應採用windows中的管理器.

十二、fc 命令 fc/b dt.dat dt2.dat>b (作二進位制程式碼比較)

比較兩個檔案,一般用作存取進度,修改遊戲儲存檔案用.

實際程式碼位置應加上0100 如:0000 05E4:00 67

實際用debug -e 修改時應加上0100 即 0000 06E4:00 67

後面加上重定向檔案">P" 可以將比較結果輸出到p檔案中.

十三、format /q /u /s /n:sectors /f:size /c

/q引數:快速格式化,僅掃描檔案分配表和根目錄區,僅對格式化過的磁碟有效.

使用時應確保格式化過後沒有增加新的壞道.

/u引數:無條件格式化,並且不儲存原來盤上的資訊,可以防止"unformat".

/s引數:格式化為系統盤,也可以使用"sys"命令.

/f:size size 可以為160 180 320 360 720 1200 1440 2800

/n:sector n可以為1 格式為單面盤,容量為160k 180k

可以為4 可以在5寸高密驅動器上格式化360k磁碟

可以為8 可以在5寸高密驅動器上進行8個扇區的格式化.

/c 重新測試壞扇區,預設時如果一個扇區標記為"壞",以後格式時就不在從新測

試,僅作標記,使用"/C"時可以從新測試.

十四、unformat 命令

對用format 格式過,且未用"/u"引數的命令起作用,用它可以來重新修復已經損

壞的硬碟分割槽表,但對網路盤不起作用.

unformat drive:[/l][/test][/p]

/l 顯示每一個被unformat發現的檔案和子目錄,如果沒有這個開關,只顯示那些

破碎的檔案和子目錄,可以用ctrl+s 暫停,按任意鍵繼續.

/test 僅作一個測試,不作實際的修復工作,作模擬過程.

/p 一邊測試一邊列印.

注:這種方法不能保證修復所有的檔案,尤其是格式化後又新增過資料的磁碟.

恢復後的檔案依次存放在subdir1....2....3等子目錄中.

十五、interlnk 語法 interlnk g=e ,它可以通過串列埠或並口在兩機間進行通訊.

將伺服器端上的e驅動器對映為客戶端的g驅動器,以後對客戶端而言,所有對g的

操作都意味著對伺服器的訪問,取消對映的辦法為interlnk g=

單獨輸入interlnk 則顯示所有的對映情況.

注意:interlnk 必須在裝入interlnk.exe 裝置驅動程式才可以使用.

所用的驅動器符號與config.?sys中lastdrv.exe設定的數目有關.可以作一個一

端為25針,另一端為9針的序列線實現,具體接線方式如下:

5 - 7 2 - 15

3 - 2 3 - 13

7 - 4 4 - 12

6 - 6 5 - 10

3 - 3 6 - 11

8 - 5 15 - 2

4 - 20 13 - 3

9針 25針 12 - 4

10 - 5

11 - 6

25 - 25

25針 25針

十六、interlnk.exe 與intersvr.exe

interlnk.exe 重新定向對於客戶驅動器或列印介面的請求到另外的伺服器驅動

器或印表機.

語法:config.sys 中加入:

device=c:/dos/interlnk.exe [drive:n][/noprinter][com][lpt]

十七、memmaker[/b][/batch][session][/swap:drive]

使用memmaker能夠優化記憶體配置,?並將配置寫入autoexec.bat和config.sys中.

在這一過程中,需要重新啟動幾次機器.

十八、memitem memcolor memdefault submenu 選單選項include

autoexec.bat 中如下: config.sys中如下:

path c:/dos;c:/ucdos [menu]

doskey menucolor=15,1(前景色15,背景色1)

/mouse/mouse menuitem=base_config,this is a base

goto %config% ->選擇項 menuitem=cced_config,this is a cced

選項 提示

:base_config menudefault=base_config,5

goto exit ->跳出 預設為base_config,延遲時間5秒

:cced_config [common]

c:/dos/smartdrv.exe /l device=c:/dos/himem.sys

goto exit 各項都包含的共同部分

:exit ->結束 [base_config]

device=c:/dos/emm386.exe ram

dos=high,umb

[cced_config]

device=c:/dos/smartdrv.exe/double_buffer

include=base_config 包含base_config設定

可以根據計算機的在不同情況下的配置要求來選擇.

十九、mscdex.exe 提供對光碟機進行讀寫的程式

mscdex/d:drive [/D:drive][/e][/k][/s][/l:letter]

典型:config.sys 中device=c:/cdrom/cdrom.sys /d:mscd000

autoexec.bat中 c:/dos/mscdex /d:mscd000 /l:g

配置了一個光碟機,符號為g

引數/d:drive1為光碟機身份號,須與config.sys中的符號一致,可有多個

/d:mscd000 /d:mscd001

/e:使用擴充套件記憶體裝入光碟機驅動程式.

/s:使光碟機在ms_net或windows是否設定為共享光碟機

/V是否在載入時顯示記憶體.

/L:letter 分配給光碟機的碟符

/m:number 指定緩衝器的數目

應該注意的是:?如果用smartdrv.exe 加速對光碟機的讀寫能力,應該在autoexec.

bat中將mscdex.?exe 寫在smartdrv.exe 之前,smartdrv.exe的使用可大幅提高

對驅動器的讀寫能力.

二十、msd的使用

使用msd 可以整體檢查計算機配置及系統資訊

包括:?驅動器引數,計算機cpu引數,記憶體大小引數,顯示器型別,串.並口情況,以

及各個IRQ佔用情況,據此可以分析新增裝置是否與原來裝置有衝突.

同時也可以通過分析記憶體駐留程式,判斷記憶體中是否有病毒,有則標為"???".

二十一、prompt dos提示符

$q 等於號 $t 當前時間 $d 當前日期 $p 當前驅動器符號

$$ $號提示 $n當前驅動器 $g 大於號 $l小於號 $b 顯示"|"管道號

$h 隱去提示符 $E顯示"<-"號

對於其它文字,則直接顯示文字本身prompt ljw,則顯示為ljw提示符

prompt 則僅顯示當前驅動器號及大於號.

二十二、ramdrive.sys 使用記憶體當做虛擬盤來使用

應注意,所有資料都存在於記憶體中,應及時將其存到硬碟中,否則掉電後或者宕機

後將丟失全部資料,優點是執行速度快,但不能在windows中使用.

示例:config.sys: device=c:/dos/ramdrive.sys /size[/e|a]

size為以k為單位的位元組數,即建立的虛擬盤的大小.

/e或/a 都是使用擴充套件記憶體來建立虛擬盤,?加引數的前提是必須先載入記憶體管理

器himem.sys及emm386.exe.

二十三、subst 將一個驅動器與一個子目錄聯接

如:將對A:/l1/l2 子目錄的請求對映為S盤,則輸入

subst s: a:/l1/l2 即可

這樣使用dir s:?等命令則顯示的是a:/l1/l2子目錄下的內容,其它copy del 一樣

可以用subst s: d 來取消這種對映.

可以用subst 來顯示各種聯接情況

注意:?可以採用subst a: c:a 來建立一個對於A的讀寫盤.對於某些安裝軟體

來說,?必須使用A盤來安裝,就可以使用先將所要安裝的軟體全部拷貝到C:a子

目錄中,然後輸入subst a: c:a,再轉到A:,就可以進行軟體的安裝了.

二十四、mem /c /m /p /d 常規記憶體顯示程式

/c顯示所有記憶體駐留程式的佔用情況,分為conventional常規記憶體和uppermemory

高階記憶體佔用,並顯示總的佔用情況(常規 高階 保留 擴充套件記憶體)

/p分頁顯示,頁間暫停

/m後加模組名 如:/m msdos 顯示dos系統記憶體的佔用.

/d對常規 高階 保留 擴充套件記憶體加以詳細例表說明

通過分析,可以看出記憶體佔用是否合理,以及各種程式是否正常載入,從而在此基

礎上使用記憶體優化工具memmaker進行各種管理,同時又可以分析出一些程式宕機

的原因,若有的地方顯示"???",則可以斷定記憶體中有病毒的存在,有利於發現及消滅.

二十五、各種管道工具的使用"> < >> <<"

將各種命令造成的輸出或所需要的輸入重新定向

如:dir *.bat /b>p 可以將dir *.bat 例出的檔名輸出到p檔案中.

time<p>>p.bat

p檔案中僅存在一個回車符,則可以將時間追加進p.bat檔案中

"> >>" 是將命令產生的輸出重新定向,比如到檔案或印表機中.

>>產生的內容將追加進檔案中,>則將原檔案內容覆蓋.

"< <<" 是將命令所需要輸入的內容重新定向.

如:time<p 在批中可以是時間程式碼或回車符,可以以此改變時間.

需要說明的是 "prn "為印表機, "null"為空裝置

con 為顯示器

type p.bat>prn 可將p.bat打印出來.

copy null p 可將p檔案刪除掉

copy con p 可以在螢幕上編輯p檔案,F6可以存檔退出

type p>pp 完成p檔案到pp 的複製

type p|more 可在屏滿時暫停顯示

二十六、move 命令

move [y/-y] filename1 filename2

將檔案1移動到檔案2處

如:move c:/dos/*.* c:/cced

將dos子目錄下的所有檔案全部移動到cced 子目錄下

/y|-y引數在目標目錄不存在需要建立時,是否出現提示

可以使用該命令修改子目錄名稱,如 move dos cced

將dos目錄名改為cced

二十七、append 指定一些特殊資料檔案的存放位置,如user.dat pe2.pro等一些非*.

exe *.com *.bat 檔案

格式:append [:]終止以前存在的指定目錄 append 顯示指定情況

append [path] append c:/user 等

二十八、

call 在一個批處理命令中呼叫另外一個批處理檔案

(1)不終止現有檔案的執行,執行完掉用程式後立即返回.

(2)被呼叫批處理命令必須以bat 為副檔名

(3)呼叫批處理檔案時,可以加上引數(%1-%9)以及環境變數如%baud%

(4)不能使用管道工具及重定向工具

二十九、device devicehigh loadhigh

device 將指定的裝置驅動程式裝入記憶體中

devicehigh將指定的裝置驅動程式裝入高階記憶體中

loadhigh 將指定的裝置驅動程式裝入高階記憶體中