联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
@echo off for /f "tokens=1-3" %%A in ('reg query "HKEY_CURRENT_USER\Control Panel\International" /v sShortDate ^| findstr /i sShortDate') do ( set date_format=%%C ) reg add "HKEY_CURRENT_USER\Control Panel\International" /v sShortDate /t REG_SZ /d yyyy/MM/dd /f for /f "tokens=1-3 delims=delims=/ " %%a in ('date/t') do copy myBat.bat myBat_%%a%%b%%c.log reg add "HKEY_CURRENT_USER\Control Panel\International" /v sShortDate /t REG_SZ /d %date_format% /f pause
Originally posted by waha1she at 2008-12-11 11:03: 20%date:~0,2%
Originally posted by waha1she at 2008-12-11 11:10: 楼上的,本身年数用两位表示就不准确,你怎么能用批处理取得准确的年份?如果想准确点的话,就把日期格式改为yyyy-mm-dd,再用%date:~0,4%就能得到准确的年份了。
@echo off for /f "tokens=2 delims==" %%a in ('wmic path win32_operatingsystem get LocalDateTime /value') do ( set t=%%a ) set Year=%t:~0,4% echo %Year% pause
@echo off >"%temp%\MyDate.vbs" echo dt=date() >>"%temp%\MyDate.vbs" echo s=right(year(dt),4) >>"%temp%\MyDate.vbs" echo wscript.echo s for /f %%a in ('cscript /nologo "%temp%\MyDate.vbs"') do set Year=%%a echo %Year% pause
@echo off >"%temp%\MyDate.vbs" echo wscript.echo year(now) for /f %%a in ('cscript /nologo "%temp%\MyDate.vbs"') do set Year=%%a echo %Year% pause
@echo off >"sDate.vbs" echo dt=Date() >>"sDate.vbs" echo ymd=right(Year(dt),4)+right(Month(dt),2)+right(Day(dt),2) >>"sDate.vbs" echo wscript.echo ymd for /f %%a in ('cscript /nologo "sDate.vbs"') do copy myBat.bat myBat_%%a.log if exist sDate.vbs del /q sDate.vbs pause
@echo off >"sDate.vbs" wscript.echo wscript.echo year(date) ^& Month(date) ^& Day(date) for /f %%a in ('cscript /nologo "sDate.vbs"') do copy myBat.bat myBat_%%a.log if exist sDate.vbs del /q sDate.vbs pause