奇諾多是啥??聽說是一部比較冷門的日本電影裡的機器人??大家幫幫忙好嗎??給個詳細的介紹. 10幾歲啊,看起來啊,不算大啊~~ bat批處理文件,在ms-dos中,.bat文件是可執行文件,有一系列命令構成,其中可以包含對其他程序的調用。 首先,批處理文件是一個文本文件,這個文件的每一行都是一條dos命令(大部分時候就好像我們在dos提示符下執行的命令行一樣),你可以使用dos下的edit或者windows的記事本(notepad)等任何文本文件編輯工具創建和修改批處理文件。 其次,批處理文件是一種簡單的程序,可以通過條件語句(if)和流程控制語句(goto)來控制命令運行的流程,在批處理中也可以使用循環語句(for)來循環執行一條命令。當然,批處理文件的編程能力與c語言等編程語句比起來是十分有限的,也是十分不規范的。批處理的程序語句就是一條條的dos命令(包括內部命令和外部命令),而批處理的能力主要取決於你所使用的命令。 第三,每個編寫好的批處理文件都相當於一個dos的外部命令,你可以把它所在的目錄放到你的dos搜索路徑(path)中來使得它可以在任意位置運行。一個良好的習慣是在硬盤上建立一個bat或者batch目錄(例如c:\batch),然後將所有你編寫的批處理文件放到該目錄中,這樣只要在path中設置上c:\batch,你就可以在任意位置運行所有你編寫的批處理程序。 第四,在dos和win9x/me系統下,c:盤根目錄下的autoexec.bat批處理文件是自動運行批處理文件,每次系統啟動時會自動運行該文件,你可以將系統每次啟動時都要運行的命令放入該文件中,例如設置搜索路徑,調入鼠標驅動和磁盤緩存,設置系統環境變量等。下面是一個運行於windows98下的autoexec.bat的示例: @echooff pathc:\windows;c:\windows\command;c:\ucdos;c:\dostools;c:\systools;c:\wintools;c:\batch lhsmartdrv.exe/x lh doskey.com /insert lhctmouse.exe settemp=d:\temp settmp=d:\temp 批處理的作用 簡單的說,批處理的作用就是自動的連續執行多條命令。 這裡先講一個最簡單的應用:在啟動wps軟件時,每次都必須執行(>前面內容表示dos提示符): c:\>cdwps c:\wps>spdos c:\wps>py c:\wps>wbx c:\wps>wps 如果每次用wps之前都這樣執行一遍,您是不是覺得很麻煩呢? 好了,用批處理,就可以實現將這些麻煩的操作簡單化,首先我們編寫一個runwps.bat批處理文件,內容如下: @echooff c: cd\wps spdos py wbx wps cd\ 以後,我們每次進入wps,只需要運行runwps這個批處理文件即可。 常用命令 echo、@、call、pause、rem(小技巧:用::代替rem)是批處理文件最常用的幾個命令,我們就從他們開始學起。 echo表示顯示此命令後的字符 echooff表示在此語句後所有運行的命令都不顯示命令行本身 @與echooff相象,但它是加在每個命令行的最前面,表示運行時不顯示這一行的命令行(只能影響當前行)。 call調用另一個批處理文件(如果不用call而直接調用別的批處理文件,那麼執行完那個批處理文件後將無法返回當前文件並執行當前文件的後續命令)。 pause運行此句會暫停批處理的執行並在屏幕上顯示“pressanykeytocontinue...”或“請按任意鍵繼續。。。”的提示,等待用戶按任意鍵後繼續。 rem表示此命令後的字符為解釋行(注釋),不執行,只是給自己今後參考用的(相當於程序中的注釋)。 例1:用edit編輯a.bat文件,輸入下列內容後存盤為c:\a.bat,執行該批處理文件後可實現:將根目錄中所有文件寫入a.txt中,啟動ucdos,進入wps等功能。 批處理文件的內容為:命令注釋: @echooff不顯示後續命令行及當前命令行 dirc:\*.*>a.txt將c盤文件列表寫入a.txt callc:\ucdos\ucdos.bat調用ucdos echo你好顯示"你好" pause暫停,等待按鍵繼續 rem准備運行wps注釋:准備運行wps cducdos進入ucdos目錄 wps運行wps 批處理文件的參數 批處理文件還可以像c語言的函數一樣使用參數(相當於dos命令的命令行參數),這需要用到一個參數表示符“%”。 %[1-9]表示參數,參數是指在運行批處理文件時在文件名後加的以空格(或者tab)分隔的字符串。變量可以從%0到%9,%0表示批處理命令本身,其它參數字符串用%1到%9順序表示。 例2:c:根目錄下有一批處理文件名為f.bat,內容為: @echooff format%1 如果執行c:\>fa: 那麼在執行f.bat時,%1就表示a:,這樣format%1就相當於formata:,於是上面的命令運行時實際執行的是formata: 例3:c:根目錄下一批處理文件名為t.bat,內容為: @echooff type%1 type%2 那麼運行c:\>ta.txtb.txt %1:表示a.txt %2:表示b.txt 於是上面的命令將順序地顯示a.txt和b.txt文件的內容。 特殊命令 ifgotochoicefor是批處理文件中比較高級的命令,如果這幾個你用得很熟練,你就是批處理文件的專家啦。 一、if是條件語句,用來判斷是否符合規定的條件,從而決定執行不同的命令。有三種格式: 1、if[not]"參數"=="字符串"待執行的命令 參數如果等於(not表示不等,下同)指定的字符串,則條件成立,運行命令,否則運行下一句。 例:if"%1"=="a"formata: 2、if[not]exist[路徑\]文件名待執行的命令 如果有指定的文件,則條件成立,運行命令,否則運行下一句。 如:ifexistc:\config.systypec:\config.sys 表示如果存在c:\config.sys文件,則顯示它的內容。 3、iferrorlevel<數字>待執行的命令 很多dos程序在運行結束後會返回一個數字值用來表示程序運行的結果(或者狀態),通過iferrorlevel命令可以判斷程序的返回值,根據不同的返回值來決定執行不同的命令(返回值必須按照從大到小的順序排列)。如果返回值等於指定的數字,則條件成立,運行命令,否則運行下一句。 如iferrorlevel2gotox2 二、goto批處理文件運行到這裡將跳到goto所指定的標號(標號即label,標號用:後跟標准字符串來定義)處,goto語句一般與if配合使用,根據不同的條件來執行不同的命令組。 如: gotoend :end echothisistheend 標號用“:字符串”來定義,標號所在行不被執行。 三、choice使用此命令可以讓用戶輸入一個字符(用於選擇),從而根據用戶的選擇返回不同的errorlevel,然後於iferrorlevel配合,根據用戶的選擇運行不同的命令。 注意:choice命令為dos或者windows系統提供的外部命令,不同版本的choice命令語法會稍有不同,請用choice/?查看用法。 choice的命令語法(該語法為windows2003中choice命令的語法,其它版本的choice的命令語法與此大同小異): choice[/cchoices][/n][/cs][/ttimeout/dchoice][/mtext] 描述: 該工具允許用戶從選擇列表選擇一個項目並返回所選項目的索引。 參數列表: /cchoices指定要創建的選項列表。默認列表是"yn"。 /n在提示符中隱藏選項列表。提示前面的消息得到顯示,選項依舊處於啟用狀態。 /cs允許選擇分大小寫的選項。在默認情況下,這個工具是不分大小寫的。 /ttimeout做出默認選擇之前,暫停的秒數。可接受的值是從0到9999。如果指定了0,就不會有暫停,默認選項 會得到選擇。 /dchoice在nnnn秒之後指定默認選項。字符必須在用/c選項指定的一組選擇中;同時,必須用/t指定nnnn。 /mtext指定提示之前要顯示的消息。如果沒有指定,工具只顯示提示。 /?顯示幫助消息。 注意: errorlevel環境變量被設置為從選擇集選擇的鍵索引。列出的第一個選擇返回1,第二個選擇返回2,等等。如果用戶按的鍵不是有效的選擇,該工具會發出警告響聲。如果該工具檢測到錯誤狀態,它會返回255的errorlevel值。如果用戶按ctrl+break或ctrl+c鍵,該工具會返回0的errorlevel值。在一個批程序中使用errorlevel參數時,將參數降序排列。 示例: choice/? choice/cync/m"確認請按y,否請按n,或者取消請按c。" choice/t10/cync/cs/dy choice/cab/m"選項1請選擇a,選項2請選擇b。" choice/cab/n/m"選項1請選擇a,選項2請選擇b。" 如果我運行命令:choice/cync/m"確認請按y,否請按n,或者取消請按c。" 屏幕上會顯示: 確認請按y,否請按n,或者取消請按c。[y,n,c]? 例:test.bat的內容如下(注意,用iferrorlevel判斷返回值時,要按返回值從高到低排列): @echooff choice/cdme/m"defrag,mem,end" iferrorlevel3gotoend iferrorlevel2gotomem iferrotlevel1gotodefrag :defrag c:\dos\defrag gotoend :mem mem gotoend :end echogoodbye 此批處理運行後,將顯示“defrag,mem,end[d,m,e]?”,用戶可選擇dme,然後if語句根據用戶的選擇作出判斷,d表示執行標號為defrag的程序段,m表示執行標號為mem的程序段,e表示執行標號為end的程序段,每個程序段最後都以gotoend將程序跳到end標號處,然後程序將顯示goodbye,批處理運行結束。 四、for循環命令,只要條件符合,它將多次執行同一命令。 語法: 對一組文件中的每一個文件執行某個特定命令。 for%%variablein(set)docommand[command-parameters] %%variable指定一個單一字母可替[1] [2] 下一页
|
|