我正在尝试创建一个简单的批处理脚本但它仍然失败。我想在目录(basepath)中查找每个文件,并将每个文件放在一个单独的rar存档中。
如果我在rar行中使用“%% ~ni.rar”,他会将所有文件放在所有档案中。对于n个文件,我得到n个档案,每个档案中有n个档案。 [他似乎也没有将档案放在[c:\ test *。*]中,而是将它们放在批处理文件的位置。
如果我使用“%% i.rar”,它会创建两个不同的档案,但是文件管理完全错误:f.e:testfile.jpg>> testfile.jpg.rar和那不是我想要的(testfile.rar而不是)
@ECHO OFF
CLS
SET BASEPATH=c:\test
SET RARExe=c:\PROGRA~1\WinRAR\RAR.EXE
FOR %%i IN (%basepath%\*.*) DO %RARExe% a -m0 "%%~ni.rar" c:\test\*.*
FOR %%i IN (%basepath%\) DO mkdir c:\test\%%~ni
Goto :eof
有人可以帮助我吗?
答案 0 :(得分:1)
我找到了怎么做,实际上是一个简单的解决方案。
FOR %%i IN (%basepath%\*.*) DO (
rar a -ep1 -t -m0 c\test\%%~ni.rar %%i
)