我試圖設置自動備份7zip,但我遇到輸出文件名的問題。如何批量輸出工作日和月份(日誌文件)?
我試過使用%date%命令,但它只是在備份中創建了2個目錄。
C:\用戶\桌面\太陽11 \ 07 \ 2010.7z
我怎樣才能使它只需登錄日期和月份?
C:\用戶\桌面\孫11-07-2010.7z
我試圖設置自動備份7zip,但我遇到輸出文件名的問題。如何批量輸出工作日和月份(日誌文件)?
我試過使用%date%命令,但它只是在備份中創建了2個目錄。
C:\用戶\桌面\太陽11 \ 07 \ 2010.7z
我怎樣才能使它只需登錄日期和月份?
C:\用戶\桌面\孫11-07-2010.7z
嘗試
7z a %DATE:~-4%-%DATE:~4,2%-%DATE:~7,2%.7z *.* for (YYYY-MM-DD)
或
7z a %DATE:~7,2%-%DATE:~4,2%-%DATE:~-4%.7z *.* for (DD-MM-YYYY)
(*爲掩膜對要備份的文件。 )
您可以使用WMI以特定格式獲取日期詳細信息。來自date
(和%date%
環境變量)的輸出的問題在於它非常特定於語言環境。
如果執行:
wmic path win32_localtime get day^,month^,year^ /format:csv
你會發現你需要處理的輸出。
下面的腳本,會得到yyyy-mm-dd
格式,你需要(使用星期幾作爲主排序關鍵字是不是一個好主意):
@echo off
for /f "skip=2, tokens=2-4" delims=," %%a in ('wmic path win32_localtime get day^,month^,year^ /format:csv') do (
set /a ymd = 10000 * %%c + 100 * %%b + %%a
)
set ymd=%ymd:~0,4%-%ymd:~4,2%%ymd:~6,2%
echo %ymd%