
利用批处理压缩文件夹
我有很多个文件夹需要进行压缩:例如:文件夹1文件夹2。。。文件夹99所以,我需要一个批处理程序压缩一个文件夹后再压缩下一个,直到全部压缩完成后,再退出。请问各位高手应该如...
我有很多个文件夹需要进行压缩:
例如:文件夹1
文件夹2
。。。
文件夹99
所以,我需要一个批处理程序压缩一个文件夹后再压缩下一个,直到全部压缩完成后,再退出。请问各位高手应该如何编这个程序?
我写的代码如下:
@echo off
set "sdok_data=e:\2009"
echo "Start backup" >> e:\backup\Archiv.log
date /t >> e:\backup\Archiv.log
time /t >> e:\backup\Archiv.log
for /f "tokens=*" %%i in ('dir /b %sdok_data%') do (
"C:\Program Files\WinRAR\WinRAR.exe" a "e:\backup\%%i" -ag_YYYY_MM_DD -k -r -s "%sdok_data%\%%i"
)
echo "End backup" >> e:\backup\Archiv.log
date /t >> e:\backup\Archiv.log
time /t >> e:\backup\Archiv.log
这只是针对一个文件夹做的压缩,我现在就是不知道压完这个包后,如何压下一个包。。。 展开
例如:文件夹1
文件夹2
。。。
文件夹99
所以,我需要一个批处理程序压缩一个文件夹后再压缩下一个,直到全部压缩完成后,再退出。请问各位高手应该如何编这个程序?
我写的代码如下:
@echo off
set "sdok_data=e:\2009"
echo "Start backup" >> e:\backup\Archiv.log
date /t >> e:\backup\Archiv.log
time /t >> e:\backup\Archiv.log
for /f "tokens=*" %%i in ('dir /b %sdok_data%') do (
"C:\Program Files\WinRAR\WinRAR.exe" a "e:\backup\%%i" -ag_YYYY_MM_DD -k -r -s "%sdok_data%\%%i"
)
echo "End backup" >> e:\backup\Archiv.log
date /t >> e:\backup\Archiv.log
time /t >> e:\backup\Archiv.log
这只是针对一个文件夹做的压缩,我现在就是不知道压完这个包后,如何压下一个包。。。 展开
3个回答
展开全部
假设RAR在默认目录
@echo off
set path=%path%;C:\Program Files\WinRAR
for /f "tokens=* delims=" %%i in ('dir /a:d /b') do (
rar a "%%~ni.rar" "%%~ni"
)
放到包含你要压缩文件夹的目录中运行就可以了
@echo off
set path=%path%;C:\Program Files\WinRAR
for /f "tokens=* delims=" %%i in ('dir /a:d /b') do (
rar a "%%~ni.rar" "%%~ni"
)
放到包含你要压缩文件夹的目录中运行就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这也太麻烦了吧……看的头都痛
建议你装一个好压
我可以告诉你批处理
用D:\Program Files\HaoZip做默认
@echo off
set /a num=0
:Cir
set /a num=%num%+1
cd D:\Progra~1\haozip
haozipc a -t7z D\:文件夹%num% D:\文件夹名%num% -mx9 -ssw
rem haozipc a 文件夹%num%(这个是压缩包名。)
if not %num%==100 echo %num% & goto Cir
rem 判断文件夹的数字文件夹100就不压了
echo
pause
建议你装一个好压
我可以告诉你批处理
用D:\Program Files\HaoZip做默认
@echo off
set /a num=0
:Cir
set /a num=%num%+1
cd D:\Progra~1\haozip
haozipc a -t7z D\:文件夹%num% D:\文件夹名%num% -mx9 -ssw
rem haozipc a 文件夹%num%(这个是压缩包名。)
if not %num%==100 echo %num% & goto Cir
rem 判断文件夹的数字文件夹100就不压了
echo
pause
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2010-04-14
展开全部
我需要一个批处理程序压缩一个文件夹后再压缩下一个,直到全部压缩完成后,再退出。
难道我给的实现不了?
for /f "delims=" %%a in ('dir /a:d /b') do (
"C:\Program Files\WinRAR\WinRAR" a -r "%%~nxa.rar" "%%a"
)
难道我给的实现不了?
for /f "delims=" %%a in ('dir /a:d /b') do (
"C:\Program Files\WinRAR\WinRAR" a -r "%%~nxa.rar" "%%a"
)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询