找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 19325|回复: 5

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

[复制链接]
发表于 2023-8-24 06:02:44 | 显示全部楼层 |阅读模式
  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
复制代码
有时候碰到系统无法识别的字符有的文件或文件夹会压缩失败,帮我把压缩失败的文件写入到一个文本文档里
发表于 2023-8-24 14:31:15 | 显示全部楼层
回复 2# bluesky123


   http://bbs.bathome.net/redirect.php?goto=findpost&ptid=65837&pid=272835
 楼主| 发表于 2023-8-25 15:56:13 | 显示全部楼层
回复 2# 77七 我发的这个代码是解压的,搞错了,就是我的操作系统用的英文版的Win2012,然后系统语言也切换成了中文版,但是中文解压密码没办法在批处理中运行,我将bat文档改成了utf-8才解决,不过这个也就是凑合。这个问题好不好解决
发表于 2023-8-25 19:27:13 | 显示全部楼层
回复 3# bluesky123


   参考此贴末楼,将65001 改为936 试试。https://www.zhihu.com/question/56566162
发表于 2023-8-26 13:21:08 | 显示全部楼层
压缩失败的,会不会生成对应的 .rar 文件,或者一个 0 字节的文件?
可以根据这个来判断不
发表于 2023-8-26 14:32:32 | 显示全部楼层
回复 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
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 13:19 , Processed in 0.018276 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表