版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、DOS批處理編程原理,報(bào)告人: 日期:,目錄,DOS概述 DOS批處理的基本語法 DOS批處理命令 DOS批處理編程方法,DOS概述,DOS(Disk Operating System)是一種面向磁盤的操作系統(tǒng)軟件。是人與機(jī)器的一座橋梁,是設(shè)在機(jī)器硬件里面的一套人機(jī)交互系統(tǒng)。有了DOS,我們就不必去深入了解機(jī)器的硬件結(jié)構(gòu),也不必去死記硬背那些枯燥的機(jī)器命令。,DOS的組成,(小知識:可執(zhí)行的程序文件有*.COM和*.EXE兩種,一般來講,*.EXE文件為軟件執(zhí)行程序,而*.COM文件則為命令程序),DOS批處理的基本語法,后綴是bat的文件就是批處理文件,是一種文本文件。簡單的說,它的作用就是
2、自動(dòng)的連續(xù)執(zhí)行多條命令,批處理文件的內(nèi)容就是一條一條的命令。 首先,批處理文件是一個(gè)文本文件,這個(gè)文件的每一行都是一條DOS命令(大部分時(shí)候就好象我們在DOS提示符下執(zhí)行的命令行一樣),你可以使用DOS下的Edit或者Windows的記事本(notepad)等任何文本文件編輯工具創(chuàng)建和修改批處理文件。,DOS批處理的基本語法,其次,批處理文件是一種簡單的程序,可以通過條件語句(if)和流程控制語句(goto)來控制命令運(yùn)行的流程,在批處理中也可以使用循環(huán)語句(for)來循環(huán)執(zhí)行一條命令。 批處理文件的編程能力與C語言等編程語句比起來是十分有限的,也是十分不規(guī)范的。批處理的程序語句就是一條條的D
3、OS命令(包括內(nèi)部命令和外部命令),而批處理的能力主要取決于你所使用的命令。,DOS批處理的基本語法,第三,每個(gè)編寫好的批處理文件都相當(dāng)于一個(gè)DOS的外部命令,你可以把它所在的目錄放到你的DOS搜索路徑(path)中來使得它可以在任意位置運(yùn)行。 純以dos系統(tǒng)而言,可執(zhí)行程序大約可以細(xì)分為五類,依照執(zhí)行優(yōu)先級由高到低排列分別是:DOSKEY宏命令(預(yù)先駐留內(nèi)存),COMMAND.COM中的內(nèi)部命令(根據(jù)內(nèi)存的環(huán)境隨時(shí)進(jìn)駐內(nèi)存),以com為擴(kuò)展名的可執(zhí)行程序(由 直接載入內(nèi)存),以exe位擴(kuò)展名的可執(zhí)行程序(由 重定位后載入內(nèi)存),以bat位擴(kuò)展名的批處理程序(由 解釋分析,根據(jù)其內(nèi)容按優(yōu)先級順
4、序調(diào)用第2,3,4,5種可執(zhí)行程序,分析一行,執(zhí)行一行,文件本身不載入內(nèi)存),DOS批處理的基本語法,第四,在DOS下,C:盤根目錄下的AUTOEXEC.BAT批處理文件是自動(dòng)運(yùn)行批處理文件,每次系統(tǒng)啟動(dòng)時(shí)會(huì)自動(dòng)運(yùn)行該文件,你可以將系統(tǒng)每次啟動(dòng)時(shí)都要運(yùn)行的命令放入該文件中,例如設(shè)置搜索路徑,調(diào)入鼠標(biāo)驅(qū)動(dòng)和磁盤緩存,設(shè)置系統(tǒng)環(huán)境變量等。 AUTOEXEC.BAT為DOS系統(tǒng)的自動(dòng)運(yùn)行批處理文件,由COMMAND.COM啟動(dòng)時(shí)解釋執(zhí)行。,DOS批處理命令,常用命令 echo、call、pause、rem(小技巧:用:代替rem)是批處理文件最常用的幾個(gè)命令,DOS批處理命令,首先, 不是一個(gè)命令,
5、 而是DOS 批處理的一個(gè)特殊標(biāo)記符, 僅用于屏蔽命令行回顯. 下面是DOS命令行或批處理中可能會(huì)見到的一些特殊標(biāo)記符: * ? 文件通配符 字符串界定符 | 命令管道符 文件重定向符 命令行回顯屏蔽符 / 參數(shù)開關(guān)引導(dǎo)符 : 批處理標(biāo)簽引導(dǎo)符 % 批處理變量引導(dǎo)符,DOS批處理命令,echo 表示顯示此命令后的字符 echo off 表示在此語句后所有運(yùn)行的命令都不顯示命令行本身 與echo off相象,但它是加在每個(gè)命令行的最前面,表示運(yùn)行時(shí)不顯示這一行的命令行(只能影響當(dāng)前行)。 call 調(diào)用另一個(gè)批處理文件(如果不用call而直接調(diào)用別的批處理文件,那么執(zhí)行完那個(gè)批處理文件后將無法返
6、回當(dāng)前文件并執(zhí)行當(dāng)前文件的后續(xù)命令)。 pause 運(yùn)行此句會(huì)暫停批處理的執(zhí)行并在屏幕上顯示Press any key to continue.的提示,等待用戶按任意鍵后繼續(xù) rem 表示此命令后的字符為解釋行(注釋),不執(zhí)行,只是給自己今后參考用的(相當(dāng)于程序中的注釋)。,DOS批處理命令,特殊命令 if goto choice for是批處理文件中比較高級的命令,如果這幾個(gè)你用得很熟練,你就是批處理文件的專家啦。,DOS批處理命令,一、if 是條件語句,用來判斷是否符合規(guī)定的條件,從而決定執(zhí)行不同的命令。 有三種格式: 1、if not 參數(shù) = 字符串 待執(zhí)行的命令 參數(shù)如果等于(not
7、表示不等,下同)指定的字符串,則條件成立,運(yùn)行命令,否則運(yùn)行下一句。例:if %1=a format a:,DOS批處理命令,2、if not exist 路徑文件名 待執(zhí)行的命令 如果有指定的文件,則條件成立,運(yùn)行命令,否則運(yùn)行下一句。 如: if exist c:config.sys type c:config.sys 表示如果存在c:config.sys文件,則顯示它的內(nèi)容。,DOS批處理命令,3、if errorlevel 待執(zhí)行的命令 很多DOS程序在運(yùn)行結(jié)束后會(huì)返回一個(gè)數(shù)字值用來表示程序運(yùn)行的結(jié)果(或者狀態(tài)),通過if errorlevel命令可以判斷程序的返回值,根據(jù)不同的返回值
8、來決定執(zhí)行不同的命令(返回值必須按照從大到小的順序排列,出現(xiàn)此種現(xiàn)象的原因是, if errorlevel 比較返回碼的判斷條件并非等于, 而是大于等于. )。如果返回值等于指定的數(shù)字,則條件成立,運(yùn)行命令,否則運(yùn)行下一句。 如if errorlevel 2 goto x2,DOS批處理命令,二、goto 批處理文件運(yùn)行到這里將跳到goto所指定的標(biāo)號(標(biāo)號即label,標(biāo)號用:后跟標(biāo)準(zhǔn)字符串來定義)處,goto語句一般與if配合使用,根據(jù)不同的條件來執(zhí)行不同的命令組。 goto end :end echo this is the end 標(biāo)號用:字符串來定義,標(biāo)號所在行不被執(zhí)行。,DOS批處
9、理命令,三、choice 使用此命令可以讓用戶輸入一個(gè)字符(用于選擇),從而根據(jù)用戶的選擇返回不同的errorlevel,然后于if errorlevel配合,根據(jù)用戶的選擇運(yùn)行不同的命令。 CHOICE /C choices /N /CS /T timeout /D choice /M text 描述: 該工具允許用戶從選擇列表選擇一個(gè)項(xiàng)目并返回所選項(xiàng)目的索引。,DOS批處理命令,參數(shù)列表: /C choices 指定要?jiǎng)?chuàng)建的選項(xiàng)列表。默認(rèn)列表是 YN。 /N 在提示符中隱藏選項(xiàng)列表。提示前面的消息得到顯示,選項(xiàng)依舊處于啟用狀態(tài)。 /CS 允許選擇分大小寫的選項(xiàng)。在默認(rèn)情況下,這個(gè)工具 是不
10、分大小寫的。 /T timeout 做出默認(rèn)選擇之前,暫停的秒數(shù)??山邮艿闹凳菑?0到 9999。如果指定了 0,就不會(huì)有暫停,默認(rèn)選項(xiàng) 會(huì)得到選擇。 /D choice 在 nnnn 秒之后指定默認(rèn)選項(xiàng)。字符必須在用 /C 選項(xiàng)指定的一組選擇中; 同時(shí),必須用 /T 指定 nnnn。 /M text 指定提示之前要顯示的消息。如果沒有指定,工具只顯示提示。 /? 顯示幫助消息。,DOS批處理命令,簡單地說,使用此命令可以讓用戶輸入一個(gè)字符,從而運(yùn)行不同的命令。使用時(shí)應(yīng)該加/c:參數(shù),c:后應(yīng)寫提示可輸入的字符,之間無空格。它的返回碼為1234 CHOICE /C:123456789ABCDE
11、FGHIJK/N IF ERRORLEVEL 8 GOTO USB_TEST IF ERRORLEVEL 7 GOTO 485_TEST IF ERRORLEVEL 2 GOTO BIOS_TEST IF ERRORLEVEL 1 GOTO MOUSE_TEST,DOS批處理命令,四、for 循環(huán)命令,只要條件符合,它將多次執(zhí)行同一命令。 語法: 對一組文件中的每一個(gè)文件執(zhí)行某個(gè)特定命令。 FOR %variable IN (set) DO command command-parameters %variable 指定一個(gè)單一字母可替換的參數(shù)。 (set) 指定一個(gè)或一組文件??梢允褂猛ㄅ浞?/p>
12、 command 指定對每個(gè)文件執(zhí)行的命令。 command-parameters 為特定命令指定參數(shù)或命令行開關(guān)。,DOS批處理命令,例如一個(gè)批處理文件中有一行: for %c in (*.bat *.txt) do type %c 則該命令行會(huì)顯示當(dāng)前目錄下所有以bat和txt為擴(kuò)展名的文件的內(nèi)容。,DOS批處理編程方法,1. IF-EXIST 1) 首先用記事本在C:建立一個(gè)test1.bat批處理文件,文件內(nèi)容如下: echo off IF EXIST AUTOEXEC.BAT TYPE AUTOEXEC.BAT IF NOT EXIST AUTOEXEC.BAT ECHO AUTOE
13、XEC.BAT does not exist 然后運(yùn)行它: C:TEST1.BAT 如果C:存在AUTOEXEC.BAT文件,那么它的內(nèi)容就會(huì)被顯示出來,如果不存在,批處理就會(huì)提示你該文件不存在。,DOS批處理編程方法,2) 接著再建立一個(gè)test2.bat文件,內(nèi)容如下: ECHO OFF IF EXIST %1 TYPE %1 IF NOT EXIST %1 ECHO %1 does not exist 執(zhí)行: C:TEST2 AUTOEXEC.BAT 該命令運(yùn)行結(jié)果同上。,DOS批處理編程方法,說明: (1) IF EXIST 是用來測試文件是否存在的,格式為 IF EXIST 路徑+文
14、件名 命令 (2) test2.bat文件中的%1是參數(shù),DOS允許傳遞9個(gè)批參數(shù)信息給批處理文件,分別為%1%9(%0表示test2命令本身) ,這有點(diǎn)象編程中的實(shí)參和形參的關(guān)系,%1是形參,AUTOEXEC.BAT是實(shí)參。,DOS批處理編程方法,) 更進(jìn)一步的,建立一個(gè)名為TEST3.BAT的文件,內(nèi)容如下: echo off IF %1 = A ECHO XIAO IF %2 = B ECHO TIAN IF %3 = C ECHO XIN 如果運(yùn)行: C:TEST3 A B C 屏幕上會(huì)顯示: XIAO TIAN XIN,DOS批處理編程方法,如果運(yùn)行: C:TEST3 A B 屏幕上會(huì)顯示 XIAO TIAN 在這個(gè)命
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 稀土磁性材料成型工崗前保密意識考核試卷含答案
- 成品礦運(yùn)送工創(chuàng)新方法強(qiáng)化考核試卷含答案
- 焦化裝置操作工安全培訓(xùn)效果測試考核試卷含答案
- 選煤工班組評比知識考核試卷含答案
- 營造林技術(shù)員安全知識競賽水平考核試卷含答案
- 黃酒釀造工崗前安全生產(chǎn)知識考核試卷含答案
- 2024年朝陽職工工學(xué)院輔導(dǎo)員考試筆試真題匯編附答案
- 固體飲料噴霧造粒工測試驗(yàn)證知識考核試卷含答案
- 淀粉及淀粉糖制造工達(dá)標(biāo)測試考核試卷含答案
- 2024年齊齊哈爾醫(yī)學(xué)院輔導(dǎo)員考試筆試題庫附答案
- 2026年藥店培訓(xùn)計(jì)劃試題及答案
- DB32T3916-2020建筑地基基礎(chǔ)檢測規(guī)程
- 換電柜維護(hù)培訓(xùn)課件
- GB/T 15153.1-2024遠(yuǎn)動(dòng)設(shè)備及系統(tǒng)第2部分:工作條件第1篇:電源和電磁兼容性
- 初中語文 送別詩練習(xí)題(含答案)
- 企業(yè)標(biāo)準(zhǔn)-格式模板
- 五年級上冊道德與法治期末測試卷新版
- 2022年醫(yī)學(xué)專題-石家莊中國鮑曼不動(dòng)桿菌感染診治與防控專家共識
- YY/T 1543-2017鼻氧管
- YS/T 903.1-2013銦廢料化學(xué)分析方法第1部分:銦量的測定EDTA滴定法
- FZ/T 70010-2006針織物平方米干燥重量的測定
評論
0/150
提交評論