2
我有一個每日進程,可以從其他進程正在創建的文件中生成一些壓縮文件。我需要創建一個每日日誌文件,該日誌文件指出所找到的每個zip文件的一個特定文件的內容的時間戳。批處理文件,用於解壓縮文件並獲取壓縮文件內容的時間戳
我創建瞭如下的批處理腳本這似乎我的測試系統上昨日工作,但現在不是了今天,不知道爲什麼......
set VersionDirectory=C:\Test\VersionX\
set ResultOutputFile=C:\Test\LogFile.txt
for /f %%f in ('dir /b %VersionDirectory%\Installable\Packages\pattern*.zip') do (
mkdir %temp%\%%f\
unzip -extract -dir %VersionDirectory%\Installable\Packages\%%f %temp%\%%f\ > nul
for %%a in (%temp%\%%f\InstallScript.xml) do set InstallScriptXMLDate=%%~ta
rmdir /s /q %temp%\%%f\
echo %%f [package from %InstallScriptXMLDate%] >> %ResultOutputFile%
)
什麼這個文件是應該做簡短總結:
- 循環每一個圖案*用C zip文件:\測試\ VersionX \目錄
- 解壓縮此文件以%TEMP%\ %%˚F目錄(其中%% f是文件名)
- 獲取%temp%\ %% f \ InstallScript.xml的時間戳並將其放入%InstallScriptXMLDate%變量中
- 刪除%temp%\ %% f目錄
- 回顯文件名(%% f)和時間戳(%InstallScriptXMLDate%)記錄到日誌文件
就像現在的日誌文件只包含文件名,然後是字符串「[包從]」字符串,但缺少實際日期戳
解壓縮和刪除zip文件的工作完美無缺,只是沒有設置時間戳。
謝謝!通過刪除for循環中的dir/b命令解決了我的問題,並改進了我的腳本! – Alex 2012-07-19 12:54:22