a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > BAT > 正文

用批處理刪除N天前或指定日期時間(前后)創建(或修改)的文件

2020-07-26 20:11:36
字體:
來源:轉載
供稿:網友

核心代碼:

@echo off:: by oicu#lsxk.org:: 15:17 2011-1-13:: 如果只是刪除指定日期或N天前修改的文件,用forfiles即可FORFILES /P "C:/測試目錄" /S /M *.log /D -3 /C "cmd /c if @isdir==FALSE echo del @file":: 指定日期(包含)前修改的文件:/D -yyyy/mm/dd:: 以下是流水賬:: 使用限制:控制面板里設定日期格式為中文(中國):: 只有dir /tc才能查看到文件創建時間,默認dir都是dir /tw:: 為了取出創建時間,只好用兩次for+find,肯定很慢。cd /d 你的目錄:: 如果要包含子目錄,用for /r . %%a in (*):: 顯示文件修改時間for %%a in (*) do echo "%%~ta":: 中文格式時相當于for %%a in (*) do for /f "tokens=1,2* delims= " %%b in ('dir /tw "%%a" ^| find /i "%%~nxa"') do echo "%%b %%c":: 刪除某個時間后修改過的文件(這個簡單)for %%a in (*) do if "%%~ta" gtr "2008-04-01" echo del "%%a":: 這個才是顯示文件創建時間for %%a in (*) do for /f "tokens=1,2* delims= " %%b in ('dir /tc "%%a" ^| find /i "%%~nxa"') do echo "%%b %%c":: 刪除某個時間之后創建的文件,如果要刪除某個時間之前創建的,更改兩:: 處gtr為lss。除了日期外,增加判斷時間,可以去掉else段。for %%a in (*) do for /f "tokens=1,2* delims= " %%b in ('dir /tc "%%a" ^| find /i "%%~nxa"') do (  if "%%b" gtr "2010-12-15" (    echo del "%%a"  ) else (    if "%%b" equ "2010-12-15" if "%%c" gtr "14:50" echo del "%%a"  )):: 用批處理計算時間受到系統的日期格式限制,影響到用set取某一字段的值,:: 批處理計算時間方法過于復雜,要么只用vbs腳本刪除文件,要么用批處理:: 配合vbs腳本刪除。:: 取10天之前的日期,取回放入變量OldDateecho wscript.echo dateadd("d",-10,date)>GetOldDate.vbsfor /f %%a in ('cscript /nologo GetOldDate.vbs') do set OldDate=%%aecho %OldDate%del GetOldDate.vbs:: VBScript里沒有Format函數,Year、Month、Day等函數取數值后也要處理小:: 于10的數字,只能用下面的方法整理日期格式echo wscript.echo dateadd("d",-10,date)>GetOldDate.vbsfor /f "tokens=1,2,3* delims=-/. " %%i in ('cscript /nologo GetOldDate.vbs') do (  set y=%%i  set m=%%j  set d=%%k)if %m% LSS 10 set m=0%m%if %d% LSS 10 set d=0%d%set OldDate=%y%-%m%-%d%echo %OldDate%del GetOldDate.vbs:: 綜合上文,最后得到我們想要的結果:: 刪除10天前創建的舊文件(不含子目錄)echo wscript.echo dateadd("d",-10,date)>GetOldDate.vbsfor /f "tokens=1,2,3* delims=-/. " %%i in ('cscript /nologo GetOldDate.vbs') do (  set y=%%i  set m=%%j  set d=%%k)if %m% LSS 10 set m=0%m%if %d% LSS 10 set d=0%d%set OldDate=%y%-%m%-%d%del GetOldDate.vbsfor %%a in (*) do for /f "tokens=1,2* delims= " %%b in ('dir /tc "%%a" ^| find /i "%%~nxa"') do (  if "%%b" lss "%OldDate%" echo del "%%a"):: 刪除10天前修改的舊文件(不含子目錄)echo wscript.echo dateadd("d",-10,date)>GetOldDate.vbsfor /f "tokens=1,2,3* delims=-/. " %%i in ('cscript /nologo GetOldDate.vbs') do (  set y=%%i  set m=%%j  set d=%%k)if %m% LSS 10 set m=0%m%if %d% LSS 10 set d=0%d%set OldDate=%y%-%m%-%d%del GetOldDate.vbsfor %%a in (*) do if "%%~ta" lss "%OldDate%" echo del "%%a":: 本文全部用echo del代替del,只是顯示要刪除的文件,并不實際刪除。pausegoto :eof

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 亚洲人成中文字幕在线观看 | 中文字幕欧美激情 | 亚洲精品v日韩精品 | 国产成人精品一区二区 | 国产亚洲欧美在线 | 国产精品久久久久久久久久免费看 | www.视频在线观看 | 亚洲免费一区 | 可以免费看av的网址 | 欧美一级内谢 | 久久国内免费视频 | 日韩欧美在线一区 | 日韩视频在线观看一区 | 中文字幕在线观看网站 | 一区二区三区久久 | 午夜视频91| 日本不卡视频 | 国产成人精品不卡 | 欧美一区二区三区在线 | 久久久久久综合 | 欧美一区二区三区国产精品 | 久久久精品久久久久 | 成人在线超碰 | 99精品网 | 国产精品久久久久久妇女6080 | 瑟瑟网站在线观看 | 免费的黄网站 | 亚洲乱码国产乱码精品精 | 蜜臀久久精品 | 日韩aaa | 成人免费视频网站在线观看 | 亚洲一级电影 | 99久久婷婷| 99精品久久99久久久久 | 精品国产一区二区三区久久久蜜臀 | 吊视频一区二区三区 | 蜜桃久久久久久久 | 亚洲一区视频在线 | 精品一二区 | 日本高清视频网站www | 国产在线成人 |