




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、前一陣子使用WIN7的時候,忽然出現(xiàn)圖標緩存的問題。去網上搜了下解決方案,發(fā)現(xiàn)一個比較好的處理步驟。原文我已經忘記了,后來在年三十的晚上,頓覺很無聊,就按照印象中的代碼,寫了一個小的批處理文件。具體參考(此處插入百度文庫的那篇文章地址)。后來覺得批處理挺好玩的,趁在家休息的這些日子,系統(tǒng)學習一下批處理的語法以及應用。批處理命令通俗的講就是平時我們見到的那些".bat"為后綴的文件,它們可以不斷的重讀執(zhí)行命令,實現(xiàn)windows的自動管理,可以將用戶從重復、繁瑣、復雜的管理任務中解放出來,事半功倍。Windows中常用的批處理程序應用范圍主要是:文件/文件夾管理、系統(tǒng)啟動與關
2、閉、個性化桌面環(huán)境、個性化IE、個性化資源管理器、系統(tǒng)優(yōu)化、系統(tǒng)維護與管理、系統(tǒng)安全、網絡管理與安全、組策略與MMC的應用和其他一些高級應用。一般而言,創(chuàng)建批處理文件最好的方式是使用記事本編輯保存文件。即在記事本中寫代碼,然后保存的時候以".bat"作為后綴即可??匆粋€例子,以初步接觸批處理小程序。為演示方便,PC機選擇目前最為大眾化的Microsoft Windows XP 作為操作系統(tǒng)。(1)在windows下按【Win+R】鍵,在彈出的"運行"對話框中輸入"notepad"(2) 在文本文件里輸入(3) 保存批處理文件(4) 接
3、下來就是運行這個批處理文件。初學者編寫的小程序推薦在DOS下面運行,等已經可以獨立的編寫稍微復雜程序的時候在找到這個批處理文件,然后直接打開就可以了。在windows下按【Win+R】鍵,在彈出的"運行"對話框中輸入"cmd",并轉到存儲"Demo_1.bat"的目錄下,這里就是指的是D盤。運行Demo_1.bat,就會出現(xiàn)下面的結果如果直接選擇打開"Demo_1.bat",就會出現(xiàn)下面的界面 所以你會發(fā)現(xiàn),這種直接打開的方式不僅操作簡單,而且界面簡潔,但是一開始最好從DOS下面運行比較好,究竟為什么,你會在開始的
4、幾個小程序里體會到。在學習批處理程序語法的時候,有一種非常便利的方式。比如下面要講的第一個語法,"echo"的使用,我們可以使用下面的方法來獲取命令的格式以及用途。(1) 新建一個批處理文件,具體的內容如圖所示。(2) 在DOS下運行,得到下面的結果這樣我們就獲得了echo命令的語法和用途。授人以魚不如授之以漁,掌握這個方法之后,即使長時間沒寫批處理小程序,我們依舊能夠在最短的時間里回憶起相關的語法以及命令。一些常用的命令有:echo、goto、pause、call、start、rem、if、set、setlocal、shift、for、通配符("*"、
5、"?")、管道符("|")、重定向符("<"、">"、">>")等等。在接下來的章節(jié)中,我將簡單的介紹下這些命令的使用方法。echo命令語法及應用echo命令可用于在屏幕顯示相關的文字信息,起到提示和說明的作用,還可用于控制批處理文件在執(zhí)行的過程中是否回顯(此處插入回顯的定義)。DOS幫助里這么形容:顯示信息,或將命令回顯打開或關上。 ECHO ON | OFF ECHO message要顯示當前回顯設置,鍵入不帶參數(shù)的 ECHO。如果是控制回顯,那么則用到上一條的語法。
6、echo on表示回顯打開,echo off表示回顯關閉。示例如下:Demo_3.bat: /這是回顯打開的情景。Code3:Result3:Demo_4.bat /這是回顯關閉的情景Code4:Result4:通過對比,很顯然的可以看出差別。回顯關閉的時候,echo和pause所引起的命令都不會顯示在結果中,反之則會顯示。由此可以看出回顯是指把命令顯示在結果中。但是仔細對比會發(fā)現(xiàn)一個問題:"echo"命令可以控制批處理命令中其他命令是否回顯,但卻不能控制命令本身。從結果中可以看出,無論是否關閉命令回顯功能,批處理中的"echo on/off"命令都會出
7、現(xiàn)在屏幕中。為了解決這個問題,我們繼續(xù)看命令的使用。 命令語法及應用命令用于禁止當前執(zhí)行的命令回顯在屏幕上。""不受"echo"命令設置效果的影響,且命令本身不會顯示在屏幕上。這個命令是一個非常簡單的命令,在DOS幫助里是找不到的。命令格式: command參數(shù)說明:·command:要屏蔽回顯的命令·當命令不加任何參數(shù)執(zhí)行的時候,將不產生任何效果對于Demo_4做一些修改,得到以下結果Code5:Result5:對比Result5可以清晰的看到"D:/>echo off"已經不見了。echo與命令的主要區(qū)別
8、在于:命令只對當前命令行起作用,且不受echo命令設置影響;echo命令則影響設置之后的所有命令,一直到出現(xiàn)另一個echo命令改變回顯的狀態(tài)為止。pause命令的語法及應用pause命令用于暫停批處理的執(zhí)行并給出提示信息,然后用戶決定是繼續(xù)執(zhí)行還是中斷執(zhí)行。命令格式:pause參數(shù)說明:·此命令沒有參數(shù)。當命令運行后,會中斷執(zhí)行的語句,并顯示以下語句"請按任意鍵繼續(xù)."。演示如下Demo_6.bat:Code6:Result6:當命令運行到pause處的時候會暫停執(zhí)行,并給出了"請按任意鍵繼續(xù)."的提示信息。按鍵盤上的任意鍵,即可繼續(xù)執(zhí)行后面的
9、命令,若按下Ctrl+C鍵,則可直接中斷批處理的執(zhí)行,返回到命令行的狀態(tài)。goto命令的語法及應用goto是一個流程控制轉向命令,用于控制批處理中的命令執(zhí)行流程。先來看看DOS幫助下的解釋:將 cmd.exe 導向到批處理程序中帶標簽的行。GOTO label label 指定批處理程序中用作標簽的文字字符串。標簽必須單獨一行,并且以冒號打頭。、 看一個示例:Code9:Result9:可以看出,當執(zhí)行到goto語句時,直接跳過下面的echo語句,轉到last處,并接著運行l(wèi)ast之后的所有語句,一直到結束。標識符中不能含有逗號、冒號等,但可以使用空格。標識符的有效長度為最多8個字符,如果多于
10、8個字符則只識別前八個字符。call命令語法及應用call命令可以在批處理程序中調用另一個批處理程序,也可調用指定標號之后的所有命令。命令格式:CALL drive:pathfilename batch-parameters參數(shù)解釋:batch-parameters 指定批處理程序所需的命令行信息。看一個示例:Code10:Result10:Call命令在使用標號時必須加上":"號,而goto語句中則不需要添加。此外,call命令轉向標號并執(zhí)行到文件結束時會返回到調用處并繼續(xù)執(zhí)行剩下的命令,而goto語句跳轉后不再返回。if命令語法及應用if命令通過條件來決定批處理程序應該
11、如何執(zhí)行。在編寫復雜的批處理程序時,"if"是一個必不可少的命令。先來看看DOS幫助里面的描述:IF NOT ERRORLEVEL number commandIF NOT string1=string2 commandIF NOT EXIST filename command NOT 指定只有條件為 false 的情況下, Windows XP 才 應該執(zhí)行該命令。 ERRORLEVEL number 如果最后運行的程序返回一個等于或大于 指定數(shù)字的退出編碼,指定條件為 true。 string1=string2 如果指定的文字字符串匹配,指定條件為 true。 EXIS
12、T filename 如果指定的文件名存在,指定條件為 true。 command 如果符合條件,指定要執(zhí)行的命令。如果指定的 條件為 FALSE,命令后可跟一個執(zhí)行 ELSE 關鍵字后的命令的 ELSE 命令。ELSE 子句必須在 IF 之后出現(xiàn)在同一行上。例如: IF EXIST filename. ( del filename. ) ELSE ( echo filename. missing. )因為 del 命令需要用一個新行終止,以下子句不會有效:IF EXIST filename. del filename. ELSE echo filename. missing由于 ELSE 命
13、令必須與 IF 命令的尾端在同一行上,以下子句也不會有效: IF EXIST filename. del filename. ELSE echo filename. missing如果都放在同一行上,以下子句有效: IF EXIST filename. (del filename.) ELSE echo filename. missing其中,比較運算符可以是: EQU - 等于 NEQ - 不等于 LSS - 小于 LEQ - 小于或等于 GTR - 大于 GEQ - 大于或等于來看一個示例:Code11:Result11:如果這么寫,那就會出現(xiàn)錯誤,至于原因在上面引述的DOS幫助里已經寫得
14、很清楚了。Code12:Result12:若if命令中帶有else子命令,else子命令一定要與if中的最后一個命令在一行,否則會出現(xiàn)錯誤。此外,當if或else后面跟有多條命令時,應該用小括號將其括起來。for命令語法及應用for命令是批處理中一個功能強大且相對復雜的命令,它可對一組不同的文件或數(shù)據(jù)進行循環(huán)處理。照舊,看看DOS幫助里面的內容:FOR %variable IN (set) DO command command-parameters %variable 指定一個單一字母可替換的參數(shù)。 (set) 指定一個或一組文件??梢允褂猛ㄅ浞?command 指定對每個文件執(zhí)行的命令。
15、command-parameters 為特定命令指定參數(shù)或命令行開關。在批處理文件中使用 FOR 命令時,指定變量請使用 %variable而不要用 %variable。變量名稱是區(qū)分大小寫的,所以 %i 不同于 %I.下面,我們來看一個示例:Code13:Result13:在循環(huán)體中可對for后變量直接引用,這種引用與使用set命令定義的變量不同,for后的變量區(qū)分大小寫。Shift語法及應用Shift命令用于更改批處理文件參數(shù)的方式,如指定起始處理參數(shù)的位置。SHIFT /n如果命令擴展名被啟用,SHIFT 命令支持/n 命令行開關;該命令行開關告命令從第 n 個參數(shù)開始移位;n 介于零和
16、八之間。例如: SHIFT /2會將 %3 移位到 %2,將 %4 移位到 %3,等等;并且不影響 %0 和 %1??匆粋€示例:Code14:Result14:符號%0%9專用于批處理從命令行獲得的參數(shù),依次代表命令行的相應參數(shù)。rem命令語法及應用rem命令是一個注釋命令,用于在批處理中加入相關的說明信息。這些說明信息可以幫助讀者理解批處理的功能。命令格式:rem comment參數(shù)說明:·comment:指定要作為注釋的任何字符串演示程序如下:Code7:Result7:可以看出注釋的部分只有在代碼中才可以看到,結果是不顯示的。在使用rem命令的時候應該將回顯狀態(tài)關閉,否則會將r
17、em命令的整行信息輸出到屏幕。start命令語法及應用Start命令用于重新啟用一個新的命令行窗口,然后在新的窗口中執(zhí)行指定的程序或命令。在DOS下面查看幫助信息:啟動另一個窗口運行指定的程序或命令。START "title" /Dpath /I /MIN /MAX /SEPARATE | /SHARED /LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL /WAIT /B command/program parameters "title" 在窗口標題欄中顯示的標題。 pat
18、h 起始目錄 B 在不創(chuàng)建新窗口的情況下開始應用程序。 除非 啟動 C 處理,否則該應用程序會忽略 C 處理; Break 是唯一可以中斷該應用程序的方式 I 新環(huán)境是傳遞給 cmd.exe 的原始環(huán)境, 而不是當前環(huán)境 MIN 開始時窗口最小化 MAX 開始時窗口最大化 SEPARATE 在分開的空間內開始 16 位 Windows 程序 SHARED 在分共享的空間內開始 16 位 Windows 程序 LOW 在 IDLE 優(yōu)先級類別開始應用程序 NORMAL 在 NORMAL 優(yōu)先級類別開始應用程序 HIGH 在 HIGH 優(yōu)先級類別開始應用程序 REALTIME 在 REALTIME
19、 優(yōu)先級類別開始應用程序 ABOVENORMAL 在 ABOVENORMAL 優(yōu)先級類別開始應用程序我們來看一個示例:Code8:Result8:這時候在第二個窗口中輸入命令exit,則會正常返回到第一個窗口中。如果直接關閉第二個窗口,則會出現(xiàn)這種結果,可以看到第一個窗口中的信息沒有顯示完整,也就是說部分命令沒有被執(zhí)行,所以推薦用命令離開窗口以正常關閉,避免直接關閉,養(yǎng)成良好的習慣。set語法及應用set專門用來創(chuàng)建、設置、查看或者刪除環(huán)境變量。對于一些功能復雜的批處理程序,自定義變量是不可缺少的。DOS幫助里關于set命令的描述:SET variable=string variable 指定
20、環(huán)境變量名。 string 指定要指派給變量的一系列字符串。要顯示當前環(huán)境變量,鍵入不帶參數(shù)的 SET。如果命令擴展名被啟用,SET 會如下改變:可僅用一個變量激活 SET 命令,等號或值不顯示所有前綴匹配SET 命令已使用的名稱的所有變量的值。例如: SET P會顯示所有以字母 P 打頭的變量如果在當前環(huán)境中找不到該變量名稱,SET 命令將把 ERRORLEVEL設置成 1。SET 命令不允許變量名含有等號。下面來看一個示例:Code15:Result15:所以,從例子中可以看出set命令就是給一個變量賦值,當使用set /a 命令的時候,表示賦得是可求值的數(shù)字表達式。另外,批處理文件中使用變量的時候,應該在變量名前后分別加上一個百分號,否則無法正確使用變量。setlocal語法及應用setlocal命令可在批處理程序運行時設置自身的臨時變量,且不會影響到系統(tǒng)的變量環(huán)境設置。在DOS幫助里有如
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 教師班班通培訓課件
- 院感質量培訓課件
- 深圳舊改培訓課件
- 商業(yè)招商銷售培訓課件
- 養(yǎng)生spa培訓課件圖片
- 安全工程專業(yè)報考注安
- 中考化學實驗有哪些項目
- 潔凈室微生物知識培訓
- 做心理健康的陽光少年
- 《3-6歲兒童學習與發(fā)展指南》健康領域解讀
- 2025年宜賓市英語七下期末復習檢測試題含答案
- 項目管理從立項到結項全解析
- 全國導游人員資格考試單科綜合測試卷(科目一:政策與法律法規(guī))
- 中醫(yī)診斷學考點總結
- 國家開放大學學習網電大證券投資分析形考任務12345答案
- 拖車服務合同協(xié)議書模板
- 大件貨物運輸合同范本
- 2025-2030年全球與中國心理測驗行業(yè)市場發(fā)展分析及發(fā)展機遇和風險研究報告
- 提高分級護理的巡視率
- 醫(yī)美行業(yè)營銷策劃方案模板
- 2025年遼寧省沈陽市中考一模道德與法治試題(原卷版+解析版)
評論
0/150
提交評論