这个BAT比较BT……[RAR自动分卷压缩]

把想要分卷压缩的文件或者文件夹拖上去就可以了……

下载: auto-rar.bat
  1. ::   《RAR 自动分卷压缩助手》 
  2. ::  -------------------------------- 使用方法 ----------------------------- 
  3. ::   
  4. ::     将需要打包的单个文件或者单个目录,托拽到本文件图标上面,
  5. ::     Auto_rar.bat 会自动调用 rar.exe, 将提交的文件或者目录分割成指定大小
  6. ::     的分卷rar压缩文件,并保存在指定的目录中。
  7. ::     对于提交的 7zip、rar、jpg 文件,Auto_rar.bat 只分卷打包,不压缩。
  8. ::
  9. @echo off
  10. :: --------------------------------------------------------------------
  11. ::          设定文件分割之后放置的目录、设定要分割之后每卷的大小
  12. ::   
  13. ::    set BBSpath,设定文件分割之后放置的目录,结尾不能有“\”
  14. ::
  15. ::    set size=500k  表示分割成每卷 500k 大小;
  16. ::    set size=2m    表示分割成每卷 2M 大小;
  17. ::    set size=      没有赋值时,表示不分卷。
  18. ::                   注意:“k”、“m”不能大写,一定要小写,
  19. ::   
  20. ::    注意:BBS 表示的附件可以是256K,实际只能上传 200K 的附件
  21. :: --------------------------------------------------------------------
  22. set size=500K
  23. set BBSpath=c:\bbsup
  24. if {%1}=={} goto readme
  25. :: --------------------------------------------------------------------
  26. ::              定位 rar.exe 目录位置,请确认已经安装了Winrar
  27. :: --------------------------------------------------------------------
  28. del %temp%\Auto_rar_readme.txt >nul
  29. del %temp%\$cd$.txt >nul
  30. reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.rar\ShellNew" /v "FileName">%temp%\$cd$.txt
  31. for /f "skip=4 tokens=3 delims=    " %%i in (%temp%\$cd$.txt) do set rarpath=%%~dpi
  32. del %temp%\$cd$.txt
  33. if exist "%rarpath%rar.exe" goto rarfile
  34. if exist "%ProgramFiles%\winrar\rar.exe" set rarpath=%ProgramFiles%\winrar\
  35. if not exist "%ProgramFiles%\winrar\rar.exe" goto norar
  36. :: --------------------------------------------------------------------
  37. ::           开始使用 rar.exe 分卷压缩目标文件
  38. :: --------------------------------------------------------------------
  39. :rarfile
  40. :: ----------------------------------------------------
  41. ::    修正了文件名中包含“;” 出错的问题 wz
  42. :: ----------------------------------------------------
  43. FOR /F "delims=" %%i IN ('echo %*') DO set name=%%~ni
  44. md %BBSpath%
  45. md %BBSpath%\%name%
  46. set ext=%~x1
  47. :: -----------------------------------------------------------------
  48. ::     -m<n>   设置压缩模式:
  49. ::   -m0 存储;-m1 最快;-m2 较快; -m3 标准; -m4   较好; -m5 最好
  50. :: ------------------------------------------------------------------
  51. set level=5
  52. if {%ext%}=={.7z} set level=0
  53. if {%ext%}=={.7Z} set level=0
  54. if {%ext%}=={.rar} set level=0
  55. if {%ext%}=={.RAR} set level=0
  56. if {%ext%}=={.jpg} set level=0
  57. if {%ext%}=={.JPG} set level=0
  58. @echo -------------------- %name% 分割纪录 -------------------- >>%BBSpath%\%name%\%name%_分割纪录.txt
  59. @echo. >>%BBSpath%\%name%\%name%_分割纪录.txt
  60. @echo %date%>>%BBSpath%\%name%\%name%_分割纪录.txt
  61. @echo %time% 分割开始>>%BBSpath%\%name%\%name%_分割纪录.txt
  62. @echo. >>%BBSpath%\%name%\%name%_分割纪录.txt
  63. @echo 分割的原始文件为:>>%BBSpath%\%name%\%name%_分割纪录.txt
  64. @echo ├→ %1>>%BBSpath%\%name%\%name%_分割纪录.txt
  65. @echo │ >>%BBSpath%\%name%\%name%_分割纪录.txt
  66. @echo 分割生成了以下文件,每个文件大小为 %size% :>>%BBSpath%\%name%\%name%_分割纪录.txt
  67. :: --------------------
  68. ::     压缩开始了!
  69. :: --------------------
  70. "%rarpath%rar.exe" a  -ep1 -m%level% -v%size% %BBSpath%\%name%\%name%.rar %1
  71. @FOR /r %BBSpath%\%name% %%I in (*.rar) DO (
  72. @echo ├─ %%I>>%BBSpath%\%name%\%name%_分割纪录.txt
  73. )
  74. @echo │ >>%BBSpath%\%name%\%name%_分割纪录.txt
  75. @echo %time% 分割完成。>>%BBSpath%\%name%\%name%_分割纪录.txt
  76. @echo. >>%BBSpath%\%name%\%name%_分割纪录.txt
  77. @echo 将以上文件上传到 BBS 吧!>>%BBSpath%\%name%\%name%_分割纪录.txt
  78. @echo. >>%BBSpath%\%name%\%name%_分割纪录.txt
  79. @echo ----------------------------- www.fucklenovo.com -------------------------- >>%BBSpath%\%name%\%name%_分割纪录.txt
  80. @echo. >>%BBSpath%\%name%\%name%_分割纪录.txt
  81. @echo. >>%BBSpath%\%name%\%name%_分割纪录.txt
  82. @echo. >>%BBSpath%\%name%\%name%_分割纪录.txt
  83. start explorer %BBSpath%\%name%
  84. set name=
  85. goto end
  86. :: --------------------------------------------------------------------
  87. ::           系统中找不到 rar.exe 时候的错误提示
  88. :: --------------------------------------------------------------------
  89. :norar
  90. del %temp%\Auto_rar_readme.txt >nul
  91. @echo ================ 错误提示:================>>%temp%\Auto_rar_readme.txt
  92. @echo. >>%temp%\Auto_rar_readme.txt
  93. @echo 在您的电脑中没有找到 rar.exe 。>>%temp%\Auto_rar_readme.txt
  94. @echo 请确认您已经安装了 Winrar 。>>%temp%\Auto_rar_readme.txt
  95. @echo 请确认 %rarpath%rar.exe 文件是否存在。>>%temp%\Auto_rar_readme.txt
  96. @echo 重新安装 Winrar 可以修复这个问题。>>%temp%\Auto_rar_readme.txt
  97. @echo. >>%temp%\Auto_rar_readme.txt
  98. @echo ============== 错误提示结束 ==============>>%temp%\Auto_rar_readme.txt
  99. @echo. >>%temp%\Auto_rar_readme.txt
  100. @echo. >>%temp%\Auto_rar_readme.txt
  101. @echo         《RAR 自动分卷压缩助手》      www.fucklenovo.com >>%temp%\Auto_rar_readme.txt
  102. @echo. >>%temp%\Auto_rar_readme.txt
  103. @echo 问:这个小东西可以干啥呢?>>%temp%\Auto_rar_readme.txt
  104. @echo. >>%temp%\Auto_rar_readme.txt
  105. @echo    答: 使用 Winrar 自动将文件或者目录进行分卷打包成指定的大小,>>%temp%\Auto_rar_readme.txt
  106. @echo         拖一下鼠标就可以搞定,方便快捷,上传到 BBS 更方便! >>%temp%\Auto_rar_readme.txt
  107. @echo. >>%temp%\Auto_rar_readme.txt
  108. @echo 问:既然已经安装了 Winrar,还要这个干啥?>>%temp%\Auto_rar_readme.txt
  109. @echo. >>%temp%\Auto_rar_readme.txt
  110. @echo    答: Winrar 不能对已经压缩过的文件进行分卷打包。>>%temp%\Auto_rar_readme.txt
  111. @echo         这个小东西却可以,这个小工具操作也比winrar方便快捷。>>%temp%\Auto_rar_readme.txt
  112. @echo. >>%temp%\Auto_rar_readme.txt   
  113. @echo. >>%temp%\Auto_rar_readme.txt
  114. @echo -------------------------------- 使用方法 ----------------------------- >>%temp%\Auto_rar_readme.txt
  115. @echo. >>%temp%\Auto_rar_readme.txt
  116. @echo    将需要打包的单个文件或者单个目录,托拽到 Auto_rar.bat 上面,>>%temp%\Auto_rar_readme.txt
  117. @echo    Auto_rar.bat 会自动调用 rar.exe, 将提交的文件或者目录分割成指定大小>>%temp%\Auto_rar_readme.txt
  118. @echo    的分卷rar压缩文件,并保存在指定的目录中。 >>%temp%\Auto_rar_readme.txt
  119. @echo    对于提交的 7zip、rar、jpg 文件,Auto_rar.bat 只分卷打包,不压缩。 >>%temp%\Auto_rar_readme.txt
  120. @echo. >>%temp%\Auto_rar_readme.txt
  121. @echo        提示: 用记事本打开 Auto_rar.bat 文件,修改以下参数>>%temp%\Auto_rar_readme.txt
  122. @echo             ┏━━━━━━━━━━━━━┓>>%temp%\Auto_rar_readme.txt
  123. @echo             ┃   set size=500k          ┃>>%temp%\Auto_rar_readme.txt
  124. @echo             ┃   set BBSpath=c:\bbsup   ┃>>%temp%\Auto_rar_readme.txt
  125. @echo             ┗━━━━━━━━━━━━━┛>>%temp%\Auto_rar_readme.txt
  126. @echo        可以设置分卷的大小,以及分卷文件保存的位置。>>%temp%\Auto_rar_readme.txt
  127. @echo        Auto_rar.bat 文件中包含详细的设置指南。>>%temp%\Auto_rar_readme.txt
  128. @echo. >>%temp%\Auto_rar_readme.txt
  129. @echo ----------------------------- www.fucklenovo.com -------------------------- >>%temp%\Auto_rar_readme.txt
  130. @echo. >>%temp%\Auto_rar_readme.txt
  131. @echo 注意问题:>>%temp%\Auto_rar_readme.txt
  132. @echo. >>%temp%\Auto_rar_readme.txt
  133. @echo 1、这个小工具需要调用 rar.exe,确认您已经安装了 Winrar。>>%temp%\Auto_rar_readme.txt
  134. @echo 2、提交的文件名或者目录名不能包含有“;”小分号。>>%temp%\Auto_rar_readme.txt
  135. @echo. >>%temp%\Auto_rar_readme.txt
  136. @echo. >>%temp%\Auto_rar_readme.txt
  137. @echo. >>%temp%\Auto_rar_readme.txt
  138. start notepad.exe %temp%\Auto_rar_readme.txt
  139. goto end
  140. :: --------------------------------------------------------------------
  141. ::                    没有提交文件时,弹出的使用说明
  142. :: --------------------------------------------------------------------
  143. :readme
  144. del %temp%\Auto_rar_readme.txt >nul
  145. @echo         《RAR 自动分卷压缩助手》      www.fucklenovo.com >>%temp%\Auto_rar_readme.txt
  146. @echo. >>%temp%\Auto_rar_readme.txt
  147. @echo 问:这个小东西可以干啥呢?>>%temp%\Auto_rar_readme.txt
  148. @echo. >>%temp%\Auto_rar_readme.txt
  149. @echo    答: 使用 Winrar 自动将文件或者目录进行分卷打包成指定的大小,>>%temp%\Auto_rar_readme.txt
  150. @echo         拖一下鼠标就可以搞定,方便快捷,上传到 BBS 更方便! >>%temp%\Auto_rar_readme.txt
  151. @echo. >>%temp%\Auto_rar_readme.txt
  152. @echo 问:既然已经安装了 Winrar,还要这个干啥?>>%temp%\Auto_rar_readme.txt
  153. @echo. >>%temp%\Auto_rar_readme.txt
  154. @echo    答: Winrar 不能对已经压缩过的文件进行分卷打包。>>%temp%\Auto_rar_readme.txt
  155. @echo         这个小东西却可以,这个小工具操作也比winrar方便快捷。>>%temp%\Auto_rar_readme.txt
  156. @echo. >>%temp%\Auto_rar_readme.txt   
  157. @echo. >>%temp%\Auto_rar_readme.txt
  158. @echo -------------------------------- 使用方法 ----------------------------- >>%temp%\Auto_rar_readme.txt
  159. @echo. >>%temp%\Auto_rar_readme.txt
  160. @echo    将需要打包的单个文件或者单个目录,托拽到 Auto_rar.bat 上面,>>%temp%\Auto_rar_readme.txt
  161. @echo    Auto_rar.bat 会自动调用 rar.exe, 将提交的文件或者目录分割成指定大小>>%temp%\Auto_rar_readme.txt
  162. @echo    的分卷rar压缩文件,并保存在指定的目录中。 >>%temp%\Auto_rar_readme.txt
  163. @echo    对于提交的 7zip、rar、jpg 文件,Auto_rar.bat 只分卷打包,不压缩。 >>%temp%\Auto_rar_readme.txt
  164. @echo. >>%temp%\Auto_rar_readme.txt
  165. @echo        提示: 用记事本打开 Auto_rar.bat 文件,修改以下参数>>%temp%\Auto_rar_readme.txt
  166. @echo             ┏━━━━━━━━━━━━━┓>>%temp%\Auto_rar_readme.txt
  167. @echo             ┃   set size=500k          ┃>>%temp%\Auto_rar_readme.txt
  168. @echo             ┃   set BBSpath=c:\bbsup   ┃>>%temp%\Auto_rar_readme.txt
  169. @echo             ┗━━━━━━━━━━━━━┛>>%temp%\Auto_rar_readme.txt
  170. @echo        可以设置分卷的大小,以及分卷文件保存的位置。>>%temp%\Auto_rar_readme.txt
  171. @echo        Auto_rar.bat 文件中包含详细的设置指南。>>%temp%\Auto_rar_readme.txt
  172. @echo. >>%temp%\Auto_rar_readme.txt
  173. @echo ----------------------------- www.fucklenovo.com -------------------------- >>%temp%\Auto_rar_readme.txt
  174. @echo. >>%temp%\Auto_rar_readme.txt
  175. @echo 注意问题:>>%temp%\Auto_rar_readme.txt
  176. @echo. >>%temp%\Auto_rar_readme.txt
  177. @echo 1、这个小工具需要调用 rar.exe,确认您已经安装了 Winrar。>>%temp%\Auto_rar_readme.txt
  178. @echo 2、提交的文件名或者目录名不能包含有“;”小分号。>>%temp%\Auto_rar_readme.txt
  179. @echo. >>%temp%\Auto_rar_readme.txt
  180. @echo. >>%temp%\Auto_rar_readme.txt
  181. @echo. >>%temp%\Auto_rar_readme.txt
  182. start notepad.exe %temp%\Auto_rar_readme.txt
  183. goto end
  184. :end
  185. set size=
  186. set BBSpath=
  187. set name=
  188. set rarpath=
  189. set level=
Tags: ,

0 Responses to “这个BAT比较BT……[RAR自动分卷压缩]”


  1. 没有评论

发表评论