创建压缩目录的脚本(Windows 7)

时间:2014-12-18 14:51:16

标签: windows batch-file

所以我试图创建一个Windows bat文件(脚本),在启动时,将存档计算机上的特定文件夹,并将生成的.zip文件放在指定的文件夹中。如果没有创建目标文件夹,它会创建它,我希望ti在每个星期天凌晨3点运行,名称会尊重这个名称标准:windows-2014-12-10-03-50.zip(例如)。我真的是脚本的初学者,到目前为止我这样做了:

@ECHO OFF

SETLOCAL ENABLEDELAYEDEXPANSION



SET sourceDirPath="%1"

IF [%2] EQU [] (

  SET destinationDirPath="%USERPROFILE%\Desktop"

) ELSE (

  SET destinationDirPath="%2"

)

IF [%3] EQU [] (

  SET destinationFileName="%~n1%.zip"

) ELSE (

  SET destinationFileName="%3"

)

SET tempFilePath=%TEMP%\FilesToZip.txt

TYPE NUL > %tempFilePath%



FOR /F "DELIMS=*" %%i IN ('DIR /B /S /A-D "%sourceDirPath%"') DO (

  SET filePath=%%i

  SET dirPath=%%~dpi

  SET dirPath=!dirPath:~0,-1!

  SET dirPath=!dirPath:%sourceDirPath%\=!

  SET dirPath=!dirPath:%sourceDirPath%=!

  ECHO .SET DestinationDir=!dirPath! >> %tempFilePath%

  ECHO "!filePath!" >> %tempFilePath%

)



MAKECAB /D MaxDiskSize=0 /D CompressionType=MSZIP /D Cabinet=ON /D Compress=ON /D UniqueFiles=OFF /D DiskDirectoryTemplate=%destinationDirPath% /D CabinetNameTemplate=%destinationFileName%  /F %tempFilePath% > NUL 2>&1



DEL setup.inf > NUL 2>&1

DEL setup.rpt > NUL 2>&1

DEL %tempFilePath% > NUL 2>&1

然而它不起作用。谢谢你,就像我说的那样,非常初学者。

0 个答案:

没有答案