我正在嘗試創建具有發生在批處理文件中的事件時間戳的日誌文件。正確標記由批處理腳本創建的日誌文件
正如你可以從下面的代碼看到的,我不是專家編寫批處理文件。該過程儘可能地運作,雖然技術很差。爲了保持批處理文件不被刪除,我將它設置爲只讀。我會仔細研究如何在某個時候排除批處理文件。現在,這並不重要。
@echo off
echo Compressing Files...
echo Compression Batch File STARTED: %date% %time% >> c:\temp\backup-compress.log
echo --------------------------------------------- >> c:\temp\backup-compress.log
for %%X in (*) do (
"c:\Program Files\7-Zip\7z.exe" a -tgzip "%%X.gz" "%%X"
echo %%X Compressed: %date% %time:~-11,8% >> c:\temp\backup-compress.log
echo Deleting: %%X
del "%%X"
echo %%X Deleted: %date% %time:~-11,8% >> c:\temp\backup-compress.log
)
echo Moving compressed copies to Compressed Backups folder...
move *.gz "Compressed Backups\" > NUL
echo --------------------------------------------- >> c:\temp\backup-compress.log
echo Compression Batch File FINSHED: %date% %time% >> c:\temp\backup-compress.log
echo Compression completed successfully...
echo
生成的日誌文件看起來完全如我所願,但時間戳和日期在整個日誌中保持不變。當批處理文件中發生事件時,而不是更新的時間戳,我只能看到批處理文件的時間和日期,而不是每個%time%和%date%實例。
如何解決此問題並查看我正在創建的日誌文件的正確時間和日期戳記?
PS:原諒我這篇文章的長度和可能是一個簡單的問題來解決。另外,如果標籤不完全正確,我很抱歉,這是我第一次真正發佈一個問題,儘管該網站一直是一個很好的答案資源。
謝謝!那就是訣竅。我不得不承認,我在我的一些搜索結果中看到了這一點,但是我不知道爲了!工作,我必須有setlocal enabledelayedexpansion線。我之前試過並打印過!日期!和!時間!遍佈日誌文件。 我很感激幫助。 – 90civichb 2012-07-10 21:50:29