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]
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 将指定的裝置驅動程式裝入高端記憶體中
三十、defrag 優化磁盤
legend(傳奇) optimize(優化) elapse(逝去) fragment(碎片)
該指令執行對指定的盤進行優化處理(包括檢查檔案配置設定表,各檔案狀态,糾正錯
誤),在執行時,可按照檔案名大小,時間,擴充名對檔案進行排序.