• 2

求助: BAT 批次檔問題...


橘琥珀 wrote:
土 2017/03/04
echo %date:~2,4%-%date:~7,2%-%date:~10,2%
Windows 2000 的 date /t 與 %date% 本地化字串不一致,其中一種是星期會列在前面。Windows XP 和以後的系統有修正。


設定 >地區與語言->格式 ->日期與時間格式

windows 2000 太遠了,不記得是否有修改的功能,我在 中文系統,都會將時間改 am/pm 日期改 yyyy/mm/dd

方便 bat 檔操作(中文會出現 上午 、下午,或 其它奇奇怪怪的)

年月日,我是用這樣的方式抓

:Function_date
For /f "tokens=1-4 delims=/ " %%a in ('date /t') do (set yy=%%a& set mm=%%b& set dd=%%c& set ww=%%d)
set mmm=1%mm% & set /a mmm-=100
set ddd=1%mm% & set /a ddd-=100
set /a today_cnt=(%yy%-%YearStart%)*365+%mmm%*30+%ddd%
:Function_date_end

至於 3個月前,如果你用簡單一點的方式,ex:每日備份,刪除 90天前的備份

那這就簡單
dir/od |find "<DIR>"
就能將目錄 依時間排列,數有幾行,如果超過 90行,表示超過90天,刪除第一行所指的目錄。

會用 for /f in do set dir 就能做出你要的(重點是你了解 for do set dir 有多少)



  • 2
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?