求教,如何用批处理将每个子文件夹下所有内容压缩为zip
F:\download下有100左右子文件夹,每个子文件夹中都有若干文件,现在想把每个子文件夹中的所有文件压缩成zip,求教能不能用BAT实现,7-zip和winrar都...
F:\download下有100左右子文件夹,每个子文件夹中都有若干文件,现在想把每个子文件夹中的所有文件压缩成zip,求教能不能用BAT实现,7-zip和winrar都有
展开
展开全部
@echo off
::设置7ZIP路径
set "zip=C:\Program Files\7-Zip\7z.exe"
::设置操作目录
set "SourDir=F:\download"
cd /d "%SourDir%"
echo 开始压缩……
for /f %%i in ('dir /a-d /b /s') do (
if "%%~xi" NEQ ".zip" (
"%zip%" a "%%~dpni.zip" "%%i">nul
::确认压缩文件解压后可用,把下面一行的echo去掉以删除源文件
echo del /f "%%i"
)
)
echo 处理完成&pause>nul
追问
你好,程序有用是没错啦,不过我的意思是把子文件夹内全部文件打包成一个zip,不是分别压缩,可以吗
追答
@echo off
::设置7ZIP路径
set "zip=C:\Program Files\7-Zip\7z.exe"
::设置操作目录
set "SourDir=d:\test2"
cd /d "%SourDir%"
for /d %%i in (*) do "%zip%" a -mx7 "%%i.zip" "%%i"
:: 确认压缩文件解压后可用,删除下面一行的echo以删除源文件夹
echo rd /s /q %%i
)
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是把每个文件单独压缩,还是把整个子文件夹进行压缩?
追问
你好,是想把子文件夹内所有文件压缩成一个zip
追答
@echo off & title 批量压缩 By 依梦琴瑶
::设置要处理的文件夹
set Folder=F:\download
::设置压缩后是否删除原目录,1 为删除
set DelIt=0
::设置WinRAR的安装路径
set RarPath=%ProgramFiles%\WinRAR
set Path=%Path%;%RarPath%
if "%DelIt%"=="1" set df=-df
for /d %%a in ("%Folder%\*") do (
rar a "%%~a.zip" -r -ep1 -m5 "%%~a\*" -isnd %df%
)
pause
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |