第一篇:T-SQL批處理(模版)
先打個比方:如果你家來了客人,你媽媽給你2元錢到商店買1瓶啤酒給客人喝。結果客人不夠喝,你媽怕浪費,又給你2元錢讓你下樓再去買1瓶,結果又不夠喝,又讓你下樓再買1瓶,還不夠,再讓你買一瓶……這時你可能會怎么說?你肯定會不耐煩地回答:媽,拜托你,別讓我每次1瓶1瓶的買,1次多買幾瓶不就行了嗎?
我們執行SQL語句同樣如此,因為SQL Server是網絡數據庫,一臺服務器可能有很多遠程客戶端,如果在客戶端一次發送1條SQL語句,然后客戶返回結果;然后再發送1條SQL語句,再返回,效率太低了。所以為了提高效率,SQL Server就引出了批處理的概念。
?批處理是包含一個或多個 SQL 語句的組,從應用程序一次性地發送到SQL Server執行 ?SQL Server 將批處理語句編譯成一個可執行單元,此單元稱為執行計劃。執行計劃中的語句
每次執行一條
SELECT * FROM stuInfo
SELECT * FROM stuMarks
UPDATE stuMarks
SET writtenExam=writtenExam+2
GO
?GO是批處理的標志,表示SQL Server將這些T-SQL語句編譯為一個執行單元,提高執行效
率
?一般是將一些邏輯相關的業務操作語句,放置在同一批中,這完全由業務需求和代碼編寫者決定 ?SQLServer規定:如果是建庫、建表語句、以及我們后面學習的存儲過程和視圖等,則必須在語句末尾添加 GO 批處理標志
第二篇:批處理練習題
批處理實現兩文本同行交替輸出
有兩個文本如下(實際中并不知道兩文本各有多少行): 文本1.txt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ccccccccccccccccccccccccccccccccccccccc eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ggggggggggggggggggggggggggggggggggggggg www.tmdps.cne easy]
I should have known all along.There was something wrong.I just never read between the lines.Then I woke up one day and found you on your way.Leaving nothing but my heart behind.What can I do to make it up to you.Promises don't come easy.But tell me if there's a way to bring you back home to stay.Well I'd promises anything to you.I've been walkin' around with my head hanging down.Wondrin' what I'm gonna do.'Cause when you walked out that door.要求,CMD原始窗口中,不調節窗口大小,不生成臨時文件,居中顯示文本內容。輸出如下: 代碼: [Promise don't come easy] I should have known all along.There was something wrong.I just never read between the lines.Then I woke up one day and found you on your way.Leaving nothing but my heart behind.What can I do to make it up to you.Promises don't come easy.But tell me if there's a way to bring you back home to stay.Well I'd promises anything to you.I've been walkin' around with my head hanging down.Wondrin' what I'm gonna do.'Cause when you walked out that door.@echo off copy /y 1.txt 2.txt>nul echo.>>2.txt&echo end>>2.txt for /f “tokens=1,2* delims=: ” %%i in('findstr /n /o.* 2.txt')do(set “_%%i=%%j”&set “.%%i=%%k”
if %%i geq 2 call :lp %%i)del /q 2.txt&pause>nul&goto :eof :lp set /a n=%1-1 set /a num=_%1-_%n%-2 set /a kl=(80-num)/2 for /l %%i in(1,1,%kl%)do set /p= @echo off for /f “delims=” %%.in(1.txt)do(set “str=%%.” call,set “str=%%str:*a=%%” for /f “delims=a” %%{ in(“%%.”)do(set “var=%%{” call,echo.%%var:0=%%a%%str%%))pause>nul @echo off for /f “tokens=1,2 delims=a” %%i in(1.txt)do(if “%%j” neq “"(set ”str=%%i“ call,set ”str=%%str:0=%%" call,echo %%str%%a%%j)else(echo a%%i))pause>nul Windows批處理命令總結 命令:echo 1.1 echo含義 顯示消息,或者啟用或關閉命令回顯。ECHO [ON | OFF]、ECHO [message] 若要顯示當前回顯設置,請鍵入不帶參數的 ECHO。 1.2 echo舉例 ①echo 顯示當前回顯設置,結果有ECHO 處于打開狀態、ECHO 處于關閉狀態 ②echo on 打開回顯設置,即ECHO 處于打開狀態 ③echo off 關閉回顯設置,即ECHO 處于關閉狀態 ④echo 我是中國人 顯示輸出的內容信息,窗口輸出“我的中國人”,不需要加單雙引號 ⑤echo.換行 命令:pause 2.1 pause含義 暫停批處理程序,并顯示以下消息:請按任意鍵繼續...2.2 pause舉例 ①pause 顯示“請按任意鍵繼續...”信息 命令:@ 3.1 @含義 用于禁止當前執行的命令回顯在屏幕上 3.2 @舉例 @echo off 該命令行不會回顯在屏幕上 4 命令:goto 4.1 goto含義 將 cmd.exe 定向到批處理程序中帶標簽的行。 GOTO label label 指定批處理程序中用作標簽的文字字符串。標簽必須單獨一行,并且以冒號打頭。如果命令擴展被啟用,GOTO 會如下改變: GOTO 命令現在接受目標標簽 :EOF,這個標簽將控制轉移到當前批腳本文件的結尾。不定義就退出批腳本文件,這是一個容易的辦法。有關能使該功能有用的 CALL 命令的擴展描述,請鍵入CALL /?。 4.2 goto舉例 ①命令行如下 執行結果如下 命令:call 5.1 call含義 從批處理程序調用另一個批處理程序。 CALL [drive:][path]filename [batch-parameters] batch-parameters 指定批處理程序所需的命令行信息。如果命令擴展被啟用,CALL 會如下改變: CALL 命令現在將卷標當作 CALL 的目標接受。語法是:CALL:label arguments 一個新的批文件上下文由指定的參數所創建,控制在卷標被指定后傳遞到語句。你必須通過達到批腳本文件末兩次來 “exit” 兩次。第一次讀到文件末時,控制會回到 CALL 語句的緊后面。第二次會退出批腳本。5.2 call舉例 ①call 文件名 調用外部的批處理文件,并執行內容 執行結果如下: 命令:if 6.1 if含義 執行批處理程序中的條件處理。 IF [NOT] ERRORLEVEL number command IF [NOT] string1==string2 command IF [NOT] EXIST filename command NOT 指定只有條件為 false 的情況下,Windows 才應該執行該命令。 ERRORLEVEL number 如果最后運行的程序返回一個等于或大于指定數字的退出代碼,指 定條件為 true。 string1==string2 如果指定的文字字符串匹配,指定條件為 true。 EXIST filename 如果指定的文件名存在,指定條件為 true。 command 如果符合條件,指定要執行的命令。如果指定的條件為 FALSE,命令后可跟 ELSE 命令,該命令將 在 ELSE 關鍵字之后執行該命令。ELSE 子句必須出現在同一行上的 IF 之后。例如: IF EXIST filename.(del filename.)ELSE(echo filename.missing.)6.2 if舉例 ①字符串匹配判斷和文件是否存在判斷(既可以為相對路徑,也可以為絕對路徑)比較運算符 比較運算符有以下幾種: EQU不等于 LSS小于或等于 GTR大于或等于 命令:for 8.1 for含義 對一組文件中的每一個文件執行某個特定命令。 FOR %variable IN(set)DO command [command-parameters] %variable 指定一個單一字母可替換的參數。 (set) 指定一個或一組文件。可以使用通配符。 command 指定對每個文件執行的命令。 command-parameters 為特定命令指定參數或命令行開關。在批處理程序中使用 FOR 命令時,指定變量請使用 %%variable 而不要用 %variable。變量名稱是區分大小寫的,所以 %i 不同于 %I.如果啟用命令擴展,則會支持下列 FOR 命令的其他格式: FOR /D %variable IN(set)DO command [command-parameters] 如果集中包含通配符,則指定與目錄名匹配,而不與文件名匹配。FOR /R [[drive:]path] %variable IN(set)DO command [command-parameters] 檢查以 [drive:]path 為根的目錄樹,指向每個目錄中的 FOR 語句。 如果在 /R 后沒有指定目錄規范,則使用當前目錄。如果集僅為一個單點(.)字符,則枚舉該目錄樹。 FOR /L %variable IN(start,step,end)DO command [command-parameters] 該集表示以增量形式從開始到結束的一個數字序列。因此,(1,1,5)將產生序列 8.2 for舉例 ①循環輸出數字和循環輸出3.txt中的文本內容 命令:rem 9.1 rem含義 在批處理文件或 CONFIG.SYS 里加上注解或說明。REM [comment] 9.2 rem舉例 ①rem 這是一條注釋,不會執行 10 命令:start 10.1 start含義 重新打開一個窗口或執行程序,并根據參數執行相應命令 10.2 start舉例 ①start notepad++ 打開notepad++程序 ②start “這是新的cmd窗口” echo 在第二個窗口執行程序 命令:set 11.1 set含義 顯示、設置或刪除 cmd.exe 環境變量。SET [variable=[string]] variable 指定環境變量名。 string 指定要指派給變量的一系列字符串。要顯示當前環境變量,鍵入不帶參數的 SET。 11.2 set舉例 ①set 顯示所有的環境變量,環境變量不區分大小寫 ②set java_home 顯示以“java_home”開頭的環境變量 ③set JAVA_HOME=D:myworkjdkinstall 設置JAVA_HOME的值 ④set /p var=請輸入您的姓名: 提示用戶輸入參數,%var%調用該參數 ⑤set /a var=2*2 設置運算表達式 命令:choice 12.1 choice含義 CHOICE [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text] 描述:該工具允許用戶從選擇列表選擇一個項目并返回所選項目的索引。參數列表: /C choices 指定要創建的選項列表。默認列表是 “YN”。 /N 在提示符中隱藏選項列表。提示前面的消息得到顯示,選項依舊處于啟用狀態。 /CS 允許選擇分大小寫的選項。在默認情況下,這個工具 是不分大小寫的。 /T timeout 做出默認選擇之前,暫停的秒數。可接受的值是從 0 到 9999。如果指定了 0,就不會有暫停,默認選項 會得到選擇。 /D choice 在 nnnn 秒之后指定默認選項。字符必須在用 /C 選 項指定的一組選擇中;同時,必須用 /T 指定 nnnn。 /M text 指定提示之前要顯示的消息。如果沒有指定,工具只 顯示提示。 12.2 choice舉例 CHOICE /C YNC /M “確認請按 Y,否請按 N,或者取消請按 C。” CHOICE /T 10 /C ync /CS /D y CHOICE /C ab /M “選項 1 請選擇 a,選項 2 請選擇 b。” CHOICE /C ab /N /M “選項 1 請選擇 a,選項 2 請選擇 b。” 13 命令:copy 13.1 copy含義 將一份或多份文件復制到另一個位置。 COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B ] source [/A | /B] [+ source [/A | /B] [+...]] [destination [/A | /B]] source 指定要復制的文件。 /A 表示一個 ASCII 文本文件。 /B 表示一個二進位文件。 /D 允許解密要創建的目標文件 destination 為新文件指定目錄和/或文件名。 /V 驗證新文件寫入是否正確。 /N 復制帶有非 8dot3 名稱的文件時,盡可能使用短文件名。 /Y 不使用確認是否要覆蓋現有目標文件的提示。 /-Y 使用確認是否要覆蓋現有目標文件的提示。 /Z 用可重新啟動模式復制已聯網的文件。 /L 如果源是符號鏈接,請將鏈接復制到目標而不是源鏈接指向的實際文件。 13.2 copy舉例 ①copy a.txt bak.txt 復制a.txt文件,命名為bak.txt,不能復制目錄下的文件并重命名 ②copy /b f:1.txt+2.txt f:3.txt 合并文件到一個新的文件 命令:move 14.1 move含義 移動文件并重命名文件和目錄。要移動至少一個文件: MOVE [/Y | /-Y] [drive:][path]filename1[,...] destination 要重命名一個目錄: MOVE [/Y | /-Y] [drive:][path]dirname1 dirname2 [drive:][path]filename1 指定你想移動的文件位置和名稱。 destination 指定文件的新位置。目標可包含一個驅動器號 和冒號、一個目錄名或組合。如果只移動一個文件 并在移動時將其重命名,你還可以包括文件名。 [drive:][path]dirname1 指定要重命名的目錄。 dirname2 指定目錄的新名稱。 /Y 取消確認覆蓋一個現有目標文件的提示。 /-Y 對確認覆蓋一個現有目標文件發出提示。 14.2 move舉例 ①move 3.txt D:a.txt 文件移動并重命名 命令:del 15.1 del含義 刪除一個或數個文件。 DEL [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names ERASE [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names names 指定一個或多個文件或者目錄列表。通配符可用來刪除多個文件。 如果指定了一個目錄,該目錄中的所有文件都會被刪除。 /P 刪除每一個文件之前提示確認。 /F 強制刪除只讀文件。 /S 刪除所有子目錄中的指定的文件。 /Q 安靜模式。刪除全局通配符時,不要求確認 /A 根據屬性選擇要刪除的文件 屬性 R 只讀文件 S 系統文件 H 隱藏文件 A 存檔文件 I 無內容索引文件 L 重分析點 表示“否”的前綴 /B 使用空格式(沒有標題信息或摘要)。 /C 在文件大小中顯示千位數分隔符。這是默認值。用 /-C 來 禁用分隔符顯示。 /D 跟寬式相同,但文件是按欄分類列出的。 /L 用小寫。 /N 新的長列表格式,其中文件名在最右邊。 /O 用分類順序列出文件。 排列順序 N 按名稱(字母順序) S 按大小(從小到大) E 按擴展名(字母順序) D 按日期/時間(從先到后) G 組目錄優先 -反轉順序的前綴 /P 在每個信息屏幕后暫停。 /Q 顯示文件所有者。 /R 顯示文件的備用數據流。 /S 顯示指定目錄和所有子目錄中的文件。 /T 控制顯示或用來分類的時間字符域。 17.2 dir舉例 ①dir /o F: 分類顯示F盤下的文件和文件夾 命令:find 18.1 find含義 在文件中搜索字符串。 FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] “string” [[drive:][path]filename[...]] /V 顯示所有未包含指定字符串的行。 /C 僅顯示包含字符串的行數。 /N 顯示行號。 /I 搜索字符串時忽略大小寫。 /OFF[LINE] 不要跳過具有脫機屬性集的文件。 “string” 指定要搜索的文本字符串。 [drive:][path]filename 指定要搜索的文件。 18.2 find舉例 ①find /c /n “視” oa視圖對比.txt 從文件中查找“視”,并顯示行號 命令:type 19.1 type含義 顯示文本文件的內容,或者創建文件 TYPE [drive:][path]filename 19.2 type舉例 ①type nul>a.txt 創建文件a.txt ②type a.txt 查看文件內容 命令:md/mkdir 20.1 md含義 創建目錄。 MKDIR [drive:]path MD [drive:]path 如果命令擴展被啟用,MKDIR 會如下改變: 如果需要,MKDIR 會在路徑中創建中級目錄。例如: 假設 a 不 存在,那么: mkdir abcd 與:mkdir a chdir a mkdir b chdir b mkdir c chdir c mkdir d 相同。如果擴展被停用,則需要鍵入 mkdir abcd。 20.2 md舉例 ①md abcd 創建多級目錄 《Photoshop批處理》微課教學設計 課前導讀 主要介紹“動作”調板的功能和使用方法,一張圖片的添加水印和對圖像對比度、亮度的處理以及批處理圖像操作及應用。通過對本課的學習,利用Photoshop動作和自動化處理功能、記錄與播放命令,批量處理圖像,能夠快速處理圖像和設計,從而提高圖像處理的效率。 學習目標 1、掌握Photoshop中動作與批處理的概念,掌握“動作”調板功能和使用方法。 2、掌握Photoshop圖像自動化處理技巧,用動作設計各種圖像效果,掌握批處理命令的使用方法。 操作過程 一、首先回顧一下上節課所講的一張圖片的添加水印效果和對圖像對比度、亮度的處理,然后具體講解批處理的原理以及過程,并利用學校網站添加水印圖片為例,講解具體的過程,并制作動作命令 a)介紹調用“動作”面板的三種方法 b)具體操作如何通過“動作面板”錄制批處理的過程。 1.打開Photoshop,選中“窗口→動作”命令,打開動作命令窗口。此時,動作命令欄里只有默認命令序列和一些默認動作。 2.單擊動作命令欄“創建新動作”快捷命令圖標,此時就會在“默認動作”的序列下創建新動作,出現的命令對話框,在“名稱”欄中輸入自己想要的動作名稱pcl,然后單擊“記錄”按鈕,記錄開始。 3.開始創建各項需要的動作,計算機會自動記錄你的各個動作,這里舉個我們學校網站上傳圖片的要求進行處理圖片、(要求:像素大小1024*768,圖片明亮清晰,有學校的水印logo)這個自動調整圖片對比度并縮小圖片的例子: ? 點擊“圖像→圖像大小”,在對話框里設置圖像高度、寬度的大小,我們這里把寬度設為1024像素,高度768像素大小; ? 點擊“圖像→調整→亮度/對比度”,將會出現調整圖片亮度30,對比度20,使圖片變亮; ? 添加水印效果,在水印圖片上ctrl+a 全選圖片,ctrl+c復制圖片,在需要添加水印效果的圖片上ctrl+v粘貼,然后調節水印的位置以及大小。 ? 點擊“文件→存儲為”,然后在對話框中選擇保存圖片的位置; ? 最后關閉圖片; 4.單擊動作命令欄下方的“停止”按鈕停止記錄。這時我們需要的動作命令制作完畢。 二、用自動批處理命令處理圖片 1、先做準備工作:把所有待處理的圖片放到一個文件夾里,新建一個文件夾用來放置處理過的圖片。執行“文件→自動→批處理”打開批處理命令框。 1、接著設置各個參數和選項: (1)在“動作”下拉菜單中選擇“pcl”。 (2)在“源”下拉菜單中選擇“文件夾”。 (3)單擊“選取”按鈕在彈出的對話框中選擇待處理的圖片所在的文件夾,單擊“確定”。 (4)在“目的”下拉菜單中選擇“文件夾”,單擊“選擇”按鈕,在彈出的對話框中選擇準備放置處理好的圖片的文件夾,單擊“確定”。 (5)在“文件命名”的第一個框的下拉菜單中選擇“文檔名稱”。 (6)在“錯誤”下拉菜單中選擇“因錯誤而停止”,單擊“另存為”選擇一個文件夾。批處理若中途出了問題,計算機會記錄錯誤的細節,并停止。 這一切做好,檢查無誤之后,單擊“確定”,計算機就會開始一張一張地打開處理和保存那些我們選中的圖片,直到任務結束。我們耐心的等待圖片處理的過程。 小結 回顧總結,讓同學們在學習ps中遇到什么問題要認真用心,有耐心,讓他們有什么應用的技巧和方法去分享。 dos 批處理命令(forfiles) Windows Server 2003內置的命令行文件,不適合于XP系統 1.用批處理文件刪除當前目錄下 7 天以前的擴展名為bkf文件(以當前系統時間為基準) 示例: forfiles /m *.bkf /d-7 /c “cmd /c del @file /f” 2.forfiles 自動刪除7天前文件(以當前系統時間為基準) 示例: forfiles /p “d:test” /s /m *.* /d-7 /c “cmd /c del @path” d:test換成你要的目錄路徑;/d-7 指刪除7天以前文件。 3.刪除所有的空目錄(以刪除d:test目錄下為例): dir /ad/b/s d:test |sort /r >d:kill.txt For /f “tokens=*” %%i in(d:kill.txt)DO rd “%%i” del d:kill.txt 4.先刪7 天以前文件,再刪所有的空目錄;把以下復制到bat文件中。@echo off forfiles /p “d:test” /s /m *.* /d-7 /c “cmd /c del @path” dir /ad/b/s d:test |sort /r >d:kill.txt For /f “tokens=*” %%i in(d:kill.txt)DO rd “%%i” del d:kill.txt 5.forfiles 命令的用法及參數: forfiles /p <目標目錄名> /d <天數> /c <執行的命令> /p 指定了要在哪個目錄里查找文件,默認是當前工作目錄。 /d 指定一個日期或天數,用于比較文件的最后修改日期是否符合條件。/c 對每個找到的文件執行的命令。 例1.要把在C盤根目錄下最后修改日期大于或等于2010年1月7日的文件復制到D盤根目錄下: forfiles /p “c:” /d “2007-7-1” /c “cmd /c copy @path d:” 例2.刪除在C盤backup目錄下最后修改日期在10天前的文件: forfiles /p “c:backup” /d-10 /c “cmd /c echo deleting @file...&& del /f @path” 6.forfiles /p 包含要刪除文件的完整路徑(如:F:Logfiles)/m *.log-d-7 /c “cmd /c del /f @path” 解釋一下相關參數及命令 /p : 指定開始搜索文件的位置,如果不指定則默認為當前目錄。/m 如“manmee_*.log”這樣以manmee開頭的所有日志文件。如果不指定此參數則默認為“*.*”。 /d [{+|-}][{ 天為基礎,7天以前的文件。當然這里還可以指定具體時間,例如:“/d-01/7/2010”這樣所有早于2010年 1月7日的文件。注意指定的時間必須是“MM/DD/YYYY”的格式。 /c 對所有文件以此執行指定的命令,命令體須在雙引號(“)內,默認是”cmd /c echo @file“。上文中用 到的是”cmd /c del /f @path“刪除指定文件。(這里的@file 和 @path 為變量,下文中將解釋。) 下面說一下上文中用到的參數: @PATH : 表示文件的完整的路徑。 @File : 表示文件名稱。 接下來我們看看刪除文件夾的操作,如果你看了上面的介紹,相信這命令你一看就能看懂。 forfiles /p 包含文件夾的路徑(如:F:)/m 文件夾名稱(如:LogFiles)-d 0 /c ”cmd /c if @ISDIR == true rd /s/q @path“ 注意這里的”包含文件夾的路徑“不能包含要刪除的文件夾,如以上代碼所表示的就是,在F盤中查找名為 LogFiles的文件或文件夾(不能指定查找文件夾,不過在刪除時我們做了判斷)。還有就是這里出現了一個新的參數”@ISDIR“他用于判斷當前文件類型是否是”文件夾類型“,如果是則為 true否則為false。 相信到這大家就明白了,最后再將代碼保存為批處理文件,然后加入計劃任務定期執行即可。 看了上面的例子,覺得在 Windows Server 2003 下面要刪除老文件很簡單吧。但如果操作系統是 Windows 2000/XP 就比較麻煩,因為它們沒有forfiles命令,只能靠自己寫批處理來 實現了。 下面是我寫的批處理文件內容: @echo off rem ****************************** rem * 按時間刪除文件目錄的批處理 * rem ****************************** rem 設置臨時目錄的路徑 set tempDir=%tmp%remove_%date:~0,10% if not exist %tempDir% md %tempDir% rem 設置處理日期的腳本文件的路徑 set scriptFile=%tempDir%get_date.vbs rem 獲得要保留的天數 set days=%~1 if ”%days%“ == ”“ goto printUsage rem 獲得目標目錄的路徑 set dirPath=%~2 if ”%dirPath%“ == ”“ set dirPath=.rem 獲得要操作的文件形式 set fileSpec=%~3 if ”%fileSpec%“ == ”“ set fileSpec=*.* rem 生成計算日期的腳本文件并獲得刪除的截止日期 echo d=date()-%1 > %scriptFile% echo s=right(”0000“ ^& year(d),4)^& ”-“ ^& right(”00“ ^& month(d),2)^& ”-“ ^& right(”00“ ^& day(d),2)>> %scriptFile% echo wscript.echo s >> %scriptFile% for /f %%i in('cscript /nologo %scriptFile%')do set lastDate=%%i rem 處理目標目錄里的每個對象 for /f ”tokens=1,2,3* delims=<> “ %%i in('dir ”%dirPath%%fileSpec%“ /a /-c /tc')do call :proc ”%%i“ ”%%j“ ”%%k“ ”%%l“ goto :done rem 處理目標目錄里對象的過程 :proc rem 獲得對象的創建日期并判斷是否為有效格式 set fileDate=%~1 echo %fileDate% | findstr ”[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]“ > nul if errorlevel 1 goto end rem 獲得對象的類型 set fileType=%~3 if ”%fileType%“ == ”“ goto end rem 獲得對象的名稱 set fileName=%~4 if ”%fileName%“ == ”“ goto end if ”%fileName%“ == ”.“ goto end if ”%fileName%“ == ”..“ goto end if ”%fileName%“ == ”字節“ goto end if ”%fileName%“ == ”可用字節“ goto end rem 判斷對象日期是否小于或等于刪除的截止日期 if ”%fileDate:~0,10%“ leq ”%lastDate%“(echo deleting ”%fileName%“...if ”%fileType%“ == ”DIR“(rd /s /q ”%dirPath%%fileName%“)else(del /q /f ”%dirPath%% fileName%")) goto end :error echo An error occurred during backuping.:done rd /s /q %tempDir% goto end :printUsage echo Usage: %0 ^ goto end :end 主要是利用Windows的腳本功能來計算要刪除文件的截止日期,然后for加dir命令來提取文件的日期進行 判斷。 關于forfiles和for的詳細信息,可以在Windows的幫助與支持中找到。第三篇:Windows批處理命令總結詳解
第四篇:_《Photoshop批處理》微課教學設計 _
第五篇:dos 批處理命令_forfiles