要求,如下:
把目录中的所有同名文件(即同文件名,后缀名不同),打包成同名的WINRAR自解压文件。
如:目录内有文件 1.txt、1.pdf、1.doc、1.xls、2.pdf、2.txt、2.log,那么要求打包成1.exe,2.exe。
1.exe和2.exe都是WINRAR自解压文件。
WINRAR安装在默认目录.
请高手帮忙.
参照4楼方法做了一个小小的修改.- @echo off
- set SrcFolder=D:\test
- set rarPath=C:\Program Files\WinRAR
- for %%a in ("%SrcFolder%\*.*") do (
- md "%SrcFolder%\%%~na" 2>nul
- move /y "%%a" "%SrcFolder%\%%~na" 2>nul
- )
- for /f "delims=" %%a in ('dir /ad /b "%SrcFolder%\"') do (
- "%rarPath%\rar.exe" a -sfx -ep "%SrcFolder%\%%~na.exe" "%SrcFolder%\%%a"
-
- )
复制代码 RAR.EXE加了一个"-EP"参数,不记录路径信息,这样打包后的EXE文件没有路径信息.
另外,本批处理程序不能跟需要处理的文件放在同一目录.
新解决方案见8楼.
不需要把文件移动到相应子目录就可以直接压缩.
[ 本帖最后由 semiuel 于 2009-5-16 00:16 编辑 ] |