Board logo

标题: [文件操作] 求教批处理通过winrar遍历并解压子目录中.7z [打印本页]

作者: blueskyforme    时间: 2021-4-20 17:19     标题: 求教批处理通过winrar遍历并解压子目录中.7z

求助大神,我需要一个遍历子目录并解压缩子目录中的.7z文件的批处理程序。

具体的情况是:

在一个路径下,假如有5个目录,每个目录里都有一个后缀名为.7z的压缩文件。那么我需要一个程序进行判断,如果子目录下存在一个后缀名为.7z的文件,那么就把子目录里的这个压缩文件进行解压。

假设winrar的安装路径为 c:\program files\winrar\rar.exe, 左右的.7z文件加压密码都是123456

我想用winrar将子目录中的.7z压缩文件解压到所在的子目录,这个程序如何写? 谢谢大神!

解压前:
<目录1>/文件1.7z
<目录2>/文件2.7z
<目录3>/文件3.7z
<目录4>/文件4.7z
<目录5>/文件5.7z

解压后:
<目录1>/文件1
<目录2>/文件2
<目录3>/文件3
<目录4>/文件4
<目录5>/文件5

请问这样的程序怎么写?谢谢了!
作者: smss    时间: 2021-4-20 17:38

如不支持请换7Z
  1. for /r  %%i in (*.7z)do "C:\Program Files\WinRAR\rar.exe" x  -p123456 "%%i" "%%~dpi\%%~ni"
复制代码

作者: Batcher    时间: 2021-4-20 18:17

回复 1# blueskyforme


7z.exe也行:
  1. @echo off
  2. cd /d "%~dp0"
  3. for /r %%i in (*.7z) do (
  4.     "C:\Program Files\7-Zip\7z.exe" x "%%i" -o"%%~dpi" -p123456
  5. )
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2