當前位置:編程學習大全網 - 編程語言 - 幫我寫壹個rar批量壓縮bat 謝謝。

幫我寫壹個rar批量壓縮bat 謝謝。

可以新建壹個txt文件,將擴展名改為bat就行。

右鍵點擊bat文件,選編輯。輸入下列文字。

@echo off

FOR /D %%C IN (*) DO (

rar a %%C %%C

if errorlevel 0 rmdir

/s %%C

)

保 存,將這個文件和要壓縮的文件夾們放於同壹目錄,運行即可。(註意!前提是將winrar安裝文件夾加入環境變量。如果不會添加環境變量,就將這句話裏的rar改為path\rar.exe,其中path是winrar的安裝路徑,如C:\Program

Files\WinRAR\rar.exe a %%C %%C,請務必保證這個命令存在,否則即使沒壓縮也會刪掉文件夾

第壹行的@echo off 沒有太大作用,只是讓下面的命令執行時不在窗口上顯示。

第二行的FOR就是重點了。FOR大家都知道,和C語言等編程語言壹樣,是循環。/D %%C IN

(*)表示遍歷所有的文件夾(不包括子文件夾)。如果沒有/D則是遍歷所有的文件(不包括文件夾)。%%C裏的C是個循環變量名,就像C語言裏常用的i壹樣,它可以是任意字母,但只能是壹個字母,兩個%不可少。IN

(*)裏的*表示所有,是通配符,這裏可以打文件名,比如我們要壓縮以A開頭的文件夾,就可以寫成IN (A*)。DO後括號裏的語句就是循環體了。

rar是壹個命令,我們可以在winrar的安裝文件夾裏找到rar.exe程序。如果不會添加環境變量,就將這名話裏的rar改為path\rar.exe,其中path是winrar的安裝路徑。rar命令(因為是rar.exe,稱為程序也行)後的a是參數,表示創建rar文件。後面跟了兩個%%C,第壹個是創建的rar文件的名字,第二個是被壓縮的文件的名字。這壹行的意思就是將壹個文件夾壓縮為與它同名的rar文件。

事實上這時候我要的功能已經實現了,但壓縮完了以後又有壹個問題,就是原來的圖片還是要刪掉的,不然留著占不少地方。雖然在windows下刪除多個文件夾很方便,但能省事豈不更好。於是就有了下壹句。if

errorlevel

0是判斷上壹個命令(在這裏就是rar.exe)的執行結果是否是0,我從rar的幫助中查到,執行結果返回0則表示壓縮成功。rmdir是刪除文件夾的命令,/s表示除目錄本身外,還將刪除指定目錄下的所有子目錄和文件。用於刪除目錄樹。如果再加上/q,就表示不提示,沒有/q的話,每次刪除都會詢問是否確定刪除。這壹行的意思就是如果壓縮成功,就刪除被壓縮的文件夾。

  • 上一篇:遙控器是什麽原理?
  • 下一篇:十歲小朋友每天很迷茫沒有計劃不知道幹什麽怎麽辦呢?
  • copyright 2024編程學習大全網