我正在尝试创建一个批处理文件,以便使用批处理脚本在 Windows 中定期备份我的数据。
我需要日期参数和显示格式的字段(月、日和年)。当我最初使用分隔符时,一切都运行正常。但是当我将日期格式从更改为时,dd-mm-yyyy
一切yyyy-mm-dd
都失败了。
那么是否存在任何通用格式来提取字段(mm,dd,yyyy
),即使格式各不相同。
谢谢。
答案1
获取通用日期的唯一安全方法如下(希望独立于本地设置):
@echo off &setlocal
for /f "tokens=2*" %%a in ('reg query "HKCU\Control Panel\International" /v sShortDate^|find "REG_SZ"') do set "ssShortDate=%%b"
reg add "HKCU\Control Panel\International" /f /v sShortDate /d "dd MM yyyy" >nul
set "cdate=%date%"
reg add "HKCU\Control Panel\International" /f /v sShortDate /d "%ssShortDate%" >nul
for /f "tokens=1-3" %%i in ("%cdate%") do set "day=0%%i"&set "month=0%%j"&set "year=%%k"
set "day=%day:~-2%"
set "month=%month:~-2%"
echo.%year%-%month%-%day%
endlocal