windows批處理初級(jí)教程_第1頁(yè)
windows批處理初級(jí)教程_第2頁(yè)
windows批處理初級(jí)教程_第3頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、W i ndows批處理初級(jí)教程Prepared on 24 November 2020前一陣子使用WIN7的時(shí)候,忽然出現(xiàn)圖標(biāo)緩存的問題。去網(wǎng)上捜了下解 決方案,發(fā)現(xiàn)一個(gè)比較好的處理步驟。原文我已經(jīng)忘記了,后來(lái)在年三十的晚 ±,頓覺很無(wú)聊,就按照印象中的代碼,寫了一個(gè)小的批處理文件。具體參考 (此處插入百度文庫(kù)的那篇文章地址)。后來(lái)覺得批處理挺好玩的,趁在家休息的這些曰子,系統(tǒng)學(xué)習(xí)一下批處理 的語(yǔ)法以及應(yīng)用。批處理命令通俗的講就是平時(shí)我們見到的那些“.bat”為后綴的文件,它們可 以不斷的重讀執(zhí)行命令,實(shí)現(xiàn)windows的自動(dòng)管理,可以將用戶從重復(fù)、繁 瑣、復(fù)雜的管理任務(wù)中解放出來(lái)

2、,事半功倍。Windows中常用的批處理程序應(yīng)用范圍主要是:文件/文件夾管理、系統(tǒng)啟 動(dòng)與關(guān)閉、個(gè)性化桌面環(huán)境、個(gè)性化IE、個(gè)性化資源管理器、系統(tǒng)優(yōu)化、系統(tǒng) 維護(hù)與管理、系統(tǒng)安全、網(wǎng)絡(luò)管理與安全、組策略與MMC的應(yīng)用和其他一些 咼級(jí)應(yīng)用。般而言,創(chuàng)建批處理文件最好的方式是使用記事本編輯保存文件。即在 記事本中寫代碼,然后保存的時(shí)候以”.bat”作為后綴即可。看一個(gè)例子以初步接觸批處理小程序。為演示方便,PC機(jī)選擇目前最為 大眾化的MicrosoftWindowsXP作為操作系統(tǒng)。(1) 在windows下按Win+R鍵,在彈出的”運(yùn)行”對(duì)話框中輸入"notepad*(2) 在文本文件

3、里輸入(3) 保存批處理文件(4) 接下來(lái)就是運(yùn)行這個(gè)批處理文件。初學(xué)者編寫的小程序推薦在DOS下面運(yùn)行,等已經(jīng)可以獨(dú)立的編寫稍微復(fù)雜程序的時(shí)候在找到這個(gè)批處理文件,然 后直接打開就可以了。在windows下按Win+R鍵,在彈出的”運(yùn)行”對(duì)話框中輸入"cmd",并轉(zhuǎn)到存儲(chǔ)”的目錄下,這里就是指的是D盤。運(yùn)行,就會(huì)出現(xiàn)下面的結(jié)果如果直接選擇打開”",就會(huì)出現(xiàn)下面的界面所以你會(huì)發(fā)現(xiàn),這種直接打開的方式不僅操作簡(jiǎn)單,而且界面簡(jiǎn)潔,但是一開 始最好從DOS下面運(yùn)行比較好,究竟為什么,你會(huì)在開始的幾個(gè)小程序里體會(huì) 到。在學(xué)習(xí)批處理程序語(yǔ)法的時(shí)候,有一種非常便利的方式。比如

4、下面要講的 第一個(gè)語(yǔ)法,"echo"的使用,我們可以使用下面的方法來(lái)獲取命令的格式以及 用途。(1) 新建一個(gè)批處理文件,具體的內(nèi)容如圖所示。(2) 在DOS下運(yùn)行,得到下面的結(jié)果這樣我們就獲得了 echo命令的語(yǔ)法和用途。授人以魚不如授之以漁,掌握這個(gè)方法之后,即使長(zhǎng)時(shí)間沒寫批處理小程序,我們依舊能夠在最短的時(shí)間里回憶起相關(guān)的語(yǔ)法以及命令。些常用的命令有:echo、goto、pause、call、start、rem、if、set、setlocak shift、for、通配符(”*“、”)、管道符(丁)、重定向符r r O在接下來(lái)的章節(jié)中,我將簡(jiǎn)單的介紹下這些命令的使用方法

5、。echo命令語(yǔ)法及應(yīng)用echo命令可用于在屏幕顯示相關(guān)的文字信息,起到提示和說明的作用,還可用于控制批處理文件在執(zhí)行的過程中是否回顯(此處插入回顯的定義)。DOS幫助里這么形容:顯示信息'或?qū)⒚罨仫@打開或關(guān)上。ECHOONOFFECHO message 要顯示當(dāng)前回顯設(shè)置,鍵入不帶參數(shù)的ECHO °如果是控制回顯,那么則用到上一條的語(yǔ)法。echoon表示回顯打開, echooff表示回顯關(guān)閉。示例如下:" O演示如下Code6 :Result6 :當(dāng)命令運(yùn)行到pause處的時(shí)候會(huì)暫停執(zhí)行,并給出了”請(qǐng)按任意鍵繼續(xù).” 的提示信息。按鍵盤上的任意鍵,即可繼續(xù)執(zhí)行后

6、面的命令,若按下Ctrl+C 鍵,則可直接中斷批處理的執(zhí)行,返回到命令行的狀態(tài)。goto命令的語(yǔ)法及應(yīng)用goto是一個(gè)流程控制轉(zhuǎn)向命令,用于控制批處理中的命令執(zhí)行流程。先來(lái)看看DOS幫肋下的解釋:將導(dǎo)向到批處理程序中帶標(biāo)簽的行。GOTOlabellabel指定批處理程序中用作標(biāo)簽的文字字符串。標(biāo)簽必須單獨(dú)一行'并且以冒號(hào)打頭。、看一個(gè)示例:Code9 :Result9 :可以看出,當(dāng)執(zhí)行到goto語(yǔ)句時(shí),直接跳過下面的echo語(yǔ)句,轉(zhuǎn)到last處,并接著運(yùn)行l(wèi)ast之后的所有語(yǔ)句,一直到結(jié)束。標(biāo)識(shí)符中不能含有逗號(hào)、冒號(hào)等.但可以使用空格。標(biāo)識(shí)符的有效長(zhǎng)度為最多8個(gè)字符,如果多于8個(gè)字符

7、則只識(shí)別前八個(gè)字符。call命令語(yǔ)法及應(yīng)用call命令可以在批處理程序中調(diào)用另一個(gè)批處理程序,也可調(diào)用指定標(biāo)號(hào)之后的所有命令。命令格式:CALL drive: )athfilename batch-parameters 參數(shù)解釋:batch-parameters指定批處理程序所需的命令行信息??匆粋€(gè)示例:Code10 :Result 10 :Call命令在使用標(biāo)號(hào)時(shí)必須加上":”號(hào),而goto語(yǔ)句中則不需要添加。此外,call命令 轉(zhuǎn)向標(biāo)號(hào)并執(zhí)行到文件結(jié)束時(shí)會(huì)返回到調(diào)用處并繼續(xù)執(zhí)行剩下的命令,而goto語(yǔ)句跳轉(zhuǎn)后 不再返回。if命令語(yǔ)法及應(yīng)用if命令通過條件來(lái)決定批處理程序應(yīng)該如何執(zhí)

8、行。在編寫復(fù)雜的批處理程序時(shí),是一個(gè)必不可少的命令。先來(lái)看看DOS幫助里面的描述:IFfNOT/ERRORLEVELnumhercommandIF NOT string 1=string2commandIFNOTEXISTfilenaniecoiuinandNOT指定只有條件為false的情況下,WmdowsXP才應(yīng)該執(zhí)行該命令。ERRORLEVELmwbe)如果最后運(yùn)行的程序返回一個(gè)等于或大于 指定數(shù)字的退出編碼,指定條件為汁加。stringl=string2如果指定的文字字符串匹配,指定條件為trueo EXlSTfUename如果指定的文件名存在,指定條件為Iwe。 command如果符

9、合條件,指定要執(zhí)行的命令。如果指定的 條件為FALSE、命令后可跟一個(gè)執(zhí)行ELSE關(guān)鍵字后的命令的ELSE命令。ELSE子句必須在1F之后出現(xiàn)在同一行上。例如:IFEXISTfilename.(delfilename.)ELSE(丿因?yàn)閐el命令需要用一個(gè)新行終止.以下子句不會(huì)有效:由于ELSE命令必須與IF命令的尾端在同一行上.以下子句也不會(huì)有效:如果都放在同一行上.以下子句有效:IFEXISTfilename. (delfilename.)其中.比較運(yùn)算符可以是:EQU 等于NEQ不等于LSS-小于LEQ-小于或等于GTR-大于GEQ-大于或等于來(lái)看一個(gè)示例:Code 11 :Result

10、 11 :如果這么寫,那就會(huì)出現(xiàn)錯(cuò)誤,至于原因在上面引述的DOS幫肋里已經(jīng)寫得很清楚了。Code 12:Result 12:若if命令中帶有else子命令,else子命令一定要與if中的最后一個(gè)命令在一行,否則 會(huì)出現(xiàn)錯(cuò)誤。此外,當(dāng)if或else后面跟有多條命令時(shí),應(yīng)該用小括號(hào)將其括起來(lái)。for命令語(yǔ)法及應(yīng)用for命令是批處理中一個(gè)功能強(qiáng)大且相對(duì)復(fù)雜的命令,它可對(duì)一組不同的文件或數(shù)據(jù)進(jìn) 行循環(huán)處理。照舊,看看DOS幫助里面的內(nèi)容:FOR%vanableIN(set)DOcommandcommand-parameters%variahle指定一個(gè)單字母可替換的參數(shù)。(set)指定一個(gè)或一組文件。

11、可以使用通配符。command指定對(duì)每個(gè)文件執(zhí)行的命令。command-parameters為特定命令指定參數(shù)或命令行開關(guān)。在批處理文件中使用FOR命令時(shí),指定變量請(qǐng)使用%variable而不要用7皿氐°變量名稱是區(qū)分大小寫的,所艸不同于L 下面,我們來(lái)看一個(gè)示例:Code13 :Result 13 :在循環(huán)體中可對(duì)for后變量直接引用,這種引用與使用set命令定義的變量不同,for 后的變量區(qū)分大小寫。Shift語(yǔ)法及應(yīng)用Shift命令用于更改批處理文件參數(shù)的方式,如指定起始處理參數(shù)的位置。SHlFT(/n如果命令擴(kuò)展名被啟用,SHIFT命令支持命令行開關(guān);該命令行開關(guān)告命令從第*

12、個(gè)參數(shù)開始移位;n介于零和八之間。例如:SHIFT/2會(huì)將3移位到2,將4移位到3,等等;并且不影響0和1。看一個(gè)示例:Code 14 :Result 14 :符號(hào)0%9專用于批處理從命令行獲得的參數(shù),依次代表命令行的相應(yīng)參數(shù)。rem命令語(yǔ)法及應(yīng)用rem命令是一個(gè)注釋命令,用于在批處理中加入相關(guān)的說明信息。這些說明信息可以幫助讀者理解批處理的功能。命令格式-rem comment參數(shù)說明:comment :指定要作為注釋的任何字符串演示程序如下:Code7 :Result7 :可以看出注釋的部分只有在代碼中才可以看到,結(jié)果是不顯示的。在使用rem命令的 時(shí)候應(yīng)該將回顯狀態(tài)關(guān)閉,否則會(huì)將rem命

13、令的整行信息輸出到屏幕。start命令語(yǔ)法及應(yīng)用Start命令用于重新啟用一個(gè)新的命令行窗口,然后在新的窗口中執(zhí)行指定的程序或命 令。在DOS下面查看幫助信息:?jiǎn)?dòng)另一個(gè)窗口運(yùn)行指定的程序或命令。STARTHtitle J/Dpmh/I/MIN/MAXH/SEPARATE/SHARED/LOWVNOR 曲AL VHIGHVREA LTIME/ABOVENORMAL/BELOWNORMALAVAIT/B If command/proram JparametersMie”在窗口標(biāo)題欄中顯示的標(biāo)題。path起始目錄B在不創(chuàng)建新窗口的情況下開始應(yīng)用程序。除非啟動(dòng)9處理,否則該應(yīng)用程序會(huì)忽略9處理;KB

14、reak是唯一可以中斷該應(yīng)用程序的方式/新環(huán)境是傳遞給的原始環(huán)境,而不是當(dāng)前環(huán)境MIN開始時(shí)窗口最小化MAX開始時(shí)窗口最大化SEPARATE在分開的空間內(nèi)開始16位Windows程序SHARED在分共享的空間內(nèi)開始16位Windows程序LOW在IDLE優(yōu)先級(jí)類別開始應(yīng)用程序NORMAL在NORMAL優(yōu)先級(jí)類別開始應(yīng)用程序HIGH在HIGH優(yōu)先級(jí)類別開始應(yīng)用程序REALTIME在REALTIME優(yōu)先級(jí)類別開始應(yīng)用程序ABOVENORMAL莊ABOVENORMAL優(yōu)先級(jí)類別開始應(yīng)用程序我們來(lái)看一個(gè)示例:Code8:Result &這時(shí)候在第二個(gè)窗口中輸入命令exit,則會(huì)正常返回到第一個(gè)

15、窗口中o如果直接關(guān)閉第二個(gè)窗口,則會(huì)出現(xiàn)這種結(jié)果.可以看到第一個(gè)窗口中的信息沒有顯 示完整,也就是說部分命令沒有被執(zhí)行,所以推薦用命令離開窗口以正常關(guān)閉,避免直接 關(guān)閉,養(yǎng)成良好的習(xí)慣。set語(yǔ)法及應(yīng)用set專門用來(lái)創(chuàng)建、設(shè)置、查看或者刪除環(huán)境變量。對(duì)于一些功能復(fù)雜的批處理程序,自定義變量是不可缺少的。DOS幫助里關(guān)于set命令的描述:SET variable= string variable扌旨定環(huán)境變量名。string指定要指派給變量的一系列字符串,要顯示當(dāng)前環(huán)境變量,鍵入不帶參數(shù)的SET。如果命令擴(kuò)展名被啟用 SET會(huì)如下改變:可僅用一個(gè)變量激活SET命令,等號(hào)或值不顯示所有前綴匹配SE

16、T命令已使用的名稱的所有變量的值。例如:SETP會(huì)顯示所有以字母P打頭的變量如果在當(dāng)前環(huán)境中找不到該變量名稱,SET命令將把ERRORLEVELSET命令不允許變量名含有等號(hào)。下面來(lái)看一個(gè)示例:Code15 :Result 15 :所以,從例子中可以看出set命令就是給一個(gè)變量賦值,當(dāng)使用sc”a命令的時(shí)候,表 示賦得是可求值的數(shù)字表達(dá)式。另外,批處理文件中使用變量的時(shí)候,應(yīng)該在變量名前后分別加上一個(gè)百分號(hào),否則 無(wú)法正確使用變量。setlocal語(yǔ)法及應(yīng)用setlocal命令可在批處理程序運(yùn)行時(shí)設(shè)置自身的臨時(shí)變量,且不會(huì)影響到系統(tǒng)的變量環(huán) 境設(shè)置。在DOS幫助里有如下的描述:開始批處理文件中環(huán)境改動(dòng)的本地化操作。在執(zhí)行SETLOCAL之后 所做的環(huán)境改動(dòng)只限于批處理文件。要還原原先的設(shè)置.必須執(zhí) 行ENDLOCAL。達(dá)到批處理文件結(jié)尾時(shí),對(duì)于該批處理文件的每個(gè) 尚未執(zhí)行的SETLOCAL命令.都會(huì)有一個(gè)隱含的ENDLOCAL被執(zhí)行。 看一個(gè)例子:Code16 :Result 16 :Setlocal必須與endlocal命令聯(lián)合使用,endloacl命令用于結(jié)束臨時(shí)變量環(huán)境并回到系統(tǒng)變量環(huán)境。通配符(,*, “)的應(yīng)用”*“代表任意多個(gè)字符(包括零個(gè)字符),""代表任意多個(gè)字符

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論