我正在尝试调整下面显示的一些代码并击中墙壁。
命令行显示为:
cmd.exe /U /C "C:\Program Files\StorageCraft\ShadowProtect\VerifyImages.cmd <PathOfDirectoryWhichContainsImageFiles> <PathToOutputLogFile>
代码基本上对目录中的所有md5文件运行映像验证命令。问题是某些目录有> 200 md5文件,我只想验证过去24小时内创建的文件。
我能够创建在过去24小时内创建的文件列表,并使用powershell命令输出到文本文件。
是否可以调整下面的脚本,以便逐行读取文本文件并对每个文件运行VERIFY_SUB?我已经尝试过使用FOR / F命令但运气不好。
提前致谢。
REM *** START OF MAIN ROUTINE ***
SETLOCAL
PUSHD
CD /D %~dp0
REM Strip the outer quotes off of the directory parameter
SET PARAM_DIR=%1
SET PARAM_DIR=###%PARAM_DIR%###
SET PARAM_DIR=%PARAM_DIR:"###=%
SET PARAM_DIR=%PARAM_DIR:###"=%
SET PARAM_DIR=%PARAM_DIR:###=%
REM Strip the outer quotes off of the output log file parameter
SET PARAM_OUTPUT_FILE=%2
SET PARAM_OUTPUT_FILE=###%PARAM_OUTPUT_FILE%###
SET PARAM_OUTPUT_FILE=%PARAM_OUTPUT_FILE:"###=%
SET PARAM_OUTPUT_FILE=%PARAM_OUTPUT_FILE:###"=%
SET PARAM_OUTPUT_FILE=%PARAM_OUTPUT_FILE:###=%
FOR %%A IN ("%PARAM_DIR%\*.md5") DO (call :VERIFY_SUB "%%A" "%PARAM_OUTPUT_FILE%")
POPD
ENDLOCAL
GOTO :EOF
REM *** END OF MAIN ROUTINE ***
:VERIFY_SUB
@ECHO VERIFYING MD5 FILE %1
@ECHO VERIFYING MD5 FILE %1 >> %2
image.exe v %1 >> %2
@ECHO. >> %2
@ECHO. >> %2
@ECHO. >> %2
GOTO :EOF