[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 批处理怎样把压缩失败的文件写入到文本文档里?

  1. @echo off
  2. chcp 65001
  3. cd /d "%~dp0"
  4. set rar="C:\Program Files\WinRAR\WinRAR.exe"
  5. for /f "delims=" %%i in ('dir /b /s /a-d *.rar *.zip') do (
  6. for /f "skip=15 delims=" %%a in ('type "%~f0"') do (
  7. if not defined _"%%~fi" (
  8. %rar% x -y "%%~fi" -hp%%a && del "%%~fi" && set _"%%~fi"=1
  9. )
  10. )
  11. )
  12. echo finish
  13. pause & exit
复制代码
有时候碰到系统无法识别的字符有的文件或文件夹会压缩失败,帮我把压缩失败的文件写入到一个文本文档里

回复 1# bluesky123
  1. @echo off
  2. chcp 65001
  3. cd /d "%~dp0"
  4. set rar="C:\Program Files\WinRAR\WinRAR.exe"
  5. for /f "delims=" %%i in ('dir /b /s /a-d *.rar *.zip') do (
  6.     for /f "skip=20 delims=" %%a in ('type "%~f0"') do (
  7.         if not defined _"%%~fi" (
  8.             %rar% x -y "%%~fi" -hp%%a
  9.             if not errorlevel 1 (
  10.                 del "%%~fi"
  11.                 set _"%%~fi"=1
  12.             ) else (
  13.                 >>"1.log" echo 失败的文件 %%i
  14.             )
  15.         )
  16.     )
  17. )
  18. echo finish
  19. pause
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

压缩失败的,会不会生成对应的 .rar 文件,或者一个 0 字节的文件?
可以根据这个来判断不

QQ 20147578

TOP

回复 3# bluesky123


   参考此贴末楼,将65001 改为936 试试。https://www.zhihu.com/question/56566162
bat小白,请多指教!谢谢!

TOP

回复 2# 77七 我发的这个代码是解压的,搞错了,就是我的操作系统用的英文版的Win2012,然后系统语言也切换成了中文版,但是中文解压密码没办法在批处理中运行,我将bat文档改成了utf-8才解决,不过这个也就是凑合。这个问题好不好解决

TOP

回复 2# bluesky123


   http://bbs.bathome.net/redirect.php?goto=findpost&ptid=65837&pid=272835
bat小白,请多指教!谢谢!

TOP

返回列表