概述
批處理文件是無格式的文本文件,它包含一條或多條命令。它的文件擴展名為 .bat 或 .cmd。在命令提示下鍵入批處理文件的名稱,或者雙擊該批處理文件,系統就會調用Cmd.exe按照該文件中各個命令出現的順序來逐個運行它們。使用批處理文件(也被稱為批處理程序或腳本),可以簡化日常或重複性任務。當然我們的這個版本的主要内容是介紹批處理在入侵中一些實際運用,例如我們後面要提到的用批處理文件來給系統打補丁、批量植入後門程序等。
簡單程序
可以通過條件語句(if)和流程控制語句(goto)來控制命令運行的流程,在批處理中也可以使用循環語句(for)來循環執行一條命令。當然,批處理文件的編程能力與C語言等編程語句比起來是十分有限的,也是十分不規範的。批處理的程序語句就是一條條的DOS命令(包括内部命令和外部命令),而批處理的能力主要取決于你所使用的命令。
每個編寫好的批處理文件都相當于一個DOS的外部命令你可以把它所在的目錄放到你的DOS搜索路徑變量%path%(詳見後面)中來使得它可以在任意位置運行。一個良好的習慣是在硬盤上建立一個bat或者batch目錄(例如C:BATCH),然後将所有你編寫的批處理文件放到該目錄中,這樣隻要在path中設置上c:batch,你就可以在任意位置運行所有你編寫的批處理程序。
變量
類型
批處理中的變量基本上是萬能的,可以儲存各種各樣的數據,不過用來計算時你會發現變量類型轉為了int,所以範圍為[-2147483648,2147483647],如果不拿來計算的話,似乎數萬位也是可以的。
擴展
擴展,你可以理解為顯示出這個的值,如果你想要使用這個變量的值一般情況下都要擴展
擴展方式:%變量%或!變量!
關于參數
參數在批處理的表達是%0,%1,%2....%9 ,以及全部參數%*(不包括%0)
%0的初始量是批處理本身路徑,類似%~f0
一般你隻能取前九個參數,除非你使用%*
shift命令允許你獲取後面的參數
格式:shift [/n]
n為1~8的數
shift 會使%0變成%1,%1變成%2……%9變成原來的第10個參數(不推薦)
一般使用shift /1,将會從%1開始替換,保留原%0
注意:call标簽時參數也是可用的,而且當返回時參數将變回原來的
常用命令返回值
backup
備份成功
未找到備份文件
文件共享沖突阻止備份完成
用戶用ctrl-c中止備份
由于緻命的錯誤使備份操作中止
diskcomp
盤比較相同
盤比較不同
用戶通過ctrl-c中止比較操作
由于緻命的錯誤使比較操作中止
預置錯誤中止比較
diskcopy
盤拷貝操作成功
非緻命盤讀/寫錯
用戶通過ctrl-c結束拷貝操作
因緻命的處理錯誤使盤拷貝中止
預置錯誤阻止拷貝操作
format
格式化成功
用戶通過ctrl-c中止格式化處理
因緻命的處理錯誤使格式化中止
在提示“proceed with format(y/n)?”下用戶鍵入n結束
xcopy
成功拷貝文件
未找到拷貝文件
用戶通過ctrl-c中止拷貝操作
預置錯誤阻止文件拷貝操作
拷貝過程中寫盤錯誤



















