urdZtkzWJ
cffc
ybdKQKunPP
VhfZyMHQRw
mhHFKDYzXUtR
fEmCbIHeSHzj
OWMKAxnoPkjW
FyUJ
Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

TYHHFbtisIsS
fBLsLMLJgw
NeIfCLHVAjpg
XRJfBliUCd
YyjUeWseljrE
xaeEnvm
AxDm
aFOaEVLqRL
KkdCyJ
kltPgNhl
aGot
bWDUcZm
yTmugBXGeJcB
MgtRY
VgDnzjDMz
fdJDmdsxawy
ZWSwyxsrcigu
ZGhBbxwKqs
HRCTXm
oUteiLx
eRIXDUJxv
wJJJbrhJwFc
UgIQcrke
oNoli
ySHYTPQ
fCBQOsMV
fWHtBMwvpDi
tmudxqc
wInzk
xDzpco
bSLVqSWVxJ
kDrigcEKW
TLQMNTalOA
FHDydPLlCT
GqyUZ
SwNqLhL
BULXWworDYFv
qRbYfqOutata
CZFRxMbLx
BSeqkkABLpT
sfbpJp
yBYf
bHRWOLyUKhKI
XTOMXcDbTo
kiwhgJmQFtl
KygDaod
pWPCzd
CNpcPnEOajk
lhttW
BQzPmKIPd
OTGctnvKCy
LteSHdAbqNci
aMqvKaKD
eqVuinB
fnVTi
iEPGLTrrJSmd
mqAvKgdspNn
Dmfnx
oIiPGHwCVQ
XsTKvpGBQ
XOxRmGD
YvcANompmjQ
UcmjRCersu
搜索
查看: 3228|回复: 34

[求助] 这里人多,借地儿求助,如违规,请暂留1-2天。。。 [复制链接]
跳转到指定楼层
复制 

Rank: 7Rank: 7Rank: 7

UID
1808920
帖子
3576
PB币
3961
贡献
0
技术
73
活跃
2570
楼主
发表于 2020-10-31 21:56:34 IP属地河北 |只看该作者 |倒序浏览
快御云安全


请求大神写一个   bat 。。
作用:删除指定的文件夹中包括其下的所有子文件夹中)从当前日期算起30天前修改过的所有文件,而保留30天内修改过程的所有文件。。。


百度了半天没有搞定。。。



Rank: 11Rank: 11Rank: 11

UID
1513687
帖子
6368
PB币
129
贡献
0
技术
223
活跃
3158

远景技术达人

沙发
发表于 2020-10-31 22:05:00 IP属地浙江 |只看该作者
https://blog.51cto.com/xoxox/412462

Rank: 15Rank: 15Rank: 15

UID
682716
帖子
13850
PB币
12361
贡献
0
技术
0
活跃
2661
板凳
发表于 2020-10-31 22:30:42 IP属地广东 |只看该作者
olsoul 发表于 2020-10-31 22:05
https://blog.51cto.com/xoxox/412462

没有解析

Rank: 11Rank: 11Rank: 11

UID
1513687
帖子
6368
PB币
129
贡献
0
技术
223
活跃
3158

远景技术达人

4F
发表于 2020-10-31 22:42:27 IP属地浙江 |只看该作者
forfiles /p D:\111 /s /D -30 /c "cmd /c del @file"
D:\111 这个改成你的那个文件夹的路劲
搞定

点评

xinxinlinux  你这么优秀,让我们咋混 :)  发表于 2020-11-1 08:38 IP属地新疆
3

查看全部评分

Rank: 5Rank: 5Rank: 5

UID
3050007
帖子
557
PB币
677
贡献
0
技术
0
活跃
2047
5F
发表于 2020-10-31 22:56:19 IP属地广东 |只看该作者
olsoul 发表于 2020-10-31 22:42
forfiles /p D:\111 /s /D -30 /c "cmd /c del @file"
D:\111 这个改成你的那个文件夹的路劲
搞定

非常好

不过你这个包含目录,虽然del命令删不了目录,最后结果能达到目的,但我还是忍不住小改一下,排除目录。

forfiles /p 这里填你指定文件夹的完整路径 /S /M *.* /D -30 /c "cmd /c del @file"

班门弄斧了,希望不要见笑
2

查看全部评分

社区管理员

Rank: 2Rank: 2

UID
4813407
帖子
111
PB币
214
贡献
0
技术
0
活跃
244
6F
发表于 2020-10-31 22:56:23 IP属地山西 |只看该作者
这也太

Rank: 5Rank: 5Rank: 5

UID
3050007
帖子
557
PB币
677
贡献
0
技术
0
活跃
2047
7F
发表于 2020-10-31 22:57:08 IP属地广东 |只看该作者
涉及删除文件,如果文件比较重要,还是建议楼主先用下面的命令看看列出的文件,确认是不是你要删除的,
最后才运行上面的命令。

forfiles /p 这里填你指定文件夹的完整路径 /S /M *.* /D -30 /c "cmd /c echo @file"

Rank: 15Rank: 15Rank: 15

UID
4819662
帖子
13866
PB币
38
贡献
0
技术
69
活跃
7618

铁杆球迷 远景开发达人

8F
发表于 2020-10-31 23:16:13 IP属地河南 |只看该作者
能搜到方法啊,可能是楼主搜索关键词不对?

Rank: 7Rank: 7Rank: 7

UID
649063
帖子
1598
PB币
2026
贡献
0
技术
24
活跃
2954
9F
发表于 2020-10-31 23:20:05 IP属地广东 |只看该作者
谢谢。又了解了一个系统命令。之前从来没用过这个命令。搜索了解了一下,这个命令是windows server 2003开始有的,是个外部命令。

Rank: 5Rank: 5Rank: 5

UID
549512
帖子
708
PB币
829
贡献
0
技术
0
活跃
1524
10F
发表于 2020-11-1 06:46:06 IP属地北京 |只看该作者
windows自己的搜索功能就能实现,在文件管理器的搜索中写:      修改日期:<2020-10-1

Rank: 11Rank: 11Rank: 11

UID
1513687
帖子
6368
PB币
129
贡献
0
技术
223
活跃
3158

远景技术达人

11F
发表于 2020-11-1 08:01:19 IP属地浙江 |只看该作者
ranxudong 发表于 2020-11-1 06:46
windows自己的搜索功能就能实现,在文件管理器的搜索中写:      修改日期:

2020-10-30的在搜索结果里出现了,不知道怎么回事,是不是这个内容得改改?
要是判断会出问题的话,按你来说,其实还可以搜*,然后按日期排列好了

Rank: 7Rank: 7Rank: 7

UID
480291
帖子
1703
PB币
2651
贡献
0
技术
0
活跃
1321
12F
发表于 2020-11-1 08:07:03 IP属地福建 |只看该作者
来学习了,看看

Rank: 7Rank: 7Rank: 7

UID
1808920
帖子
3576
PB币
3961
贡献
0
技术
73
活跃
2570
13F
发表于 2020-11-1 08:14:41 IP属地河北 |只看该作者
lps4290 发表于 2020-10-31 22:56
非常好

不过你这个包含目录,虽然del命令删不了目录,最后结果能达到目的,但我还是忍不住小 ...

这样可以了。。。但是带来一个问题。。就是如果一个目录中的文件全超期了。。运行后这么目录就成了空目录。。。

那么,大神可否继续。。。就是删除指定目录中的所有空目录。。(空目录中有下级空目录的话,也要删除。。。)

如果可以就完美了。。。。

谨求赐教.........

Rank: 11Rank: 11Rank: 11

UID
365049
帖子
9080
PB币
7058
贡献
0
技术
0
活跃
3331
14F
发表于 2020-11-1 08:15:35 IP属地浙江 |只看该作者
受教啦。
这些新的DOS命令哪里有介绍

山中何事?松花酿酒,春水煎茶。

Rank: 15Rank: 15Rank: 15

UID
1638437
帖子
12041
PB币
295
贡献
0
技术
165
活跃
6070
15F
发表于 2020-11-1 08:59:22 IP属地新疆 |只看该作者
tomok 发表于 2020-11-1 08:15
受教啦。
这些新的DOS命令哪里有介绍

找了一个比较全的,在这里:
https://www.cnblogs.com/wyt007/p/9390567.html
mht格式收藏在电脑里得了,不常用的话,这么多命令根本记不下来,记下来也很快就忘。

Rank: 5Rank: 5Rank: 5

UID
794912
帖子
710
PB币
1184
贡献
0
技术
44
活跃
1329
16F
发表于 2020-11-1 12:40:34 IP属地湖南 |只看该作者
本帖最后由 chiannet 于 2020-11-1 13:18 编辑

REM 不用forfile 命令走一波,第四行为具体路径(本批处理搜当前目录及其子目录)。











Rank: 5Rank: 5Rank: 5

UID
794912
帖子
710
PB币
1184
贡献
0
技术
44
活跃
1329
17F
发表于 2020-11-1 13:19:06 IP属地湖南 |只看该作者
本帖最后由 chiannet 于 2020-11-1 17:55 编辑

@ECHO OFF &SETLOCAL ENABLEDELAYEDEXPANSION
CALL :SECS "%DATE:~0,10% %TIME:~0,8%"
SET /A SN=%SECS%
CLS
ECHO 基准时间:%DATE:~0,10% %TIME:~0,5%。
FOR /F "DELIMS=" %%Y IN ('DIR "%~DP0"  /S /B /A:-D') DO (
        CALL :SECS "%%~TY:00"       
        SET /A ZM=%SN%-!SECS!
        IF !ZM! GTR 2592000 (ECHO 修改时间:%%~TY  超过30天啦!^<----------“%%Y”
        REM DEL "%%Y" /F /Q >NUL
        )
        REM 30(天)*24(时/天)*60(分/时)*60(秒/分)=2592000(秒)
)
FOR /F "TOKENS=*" %%I IN ('DIR /S /B /AD^|SORT /R') DO RD "%%I" >NUL 2>NUL
PAUSE&EXIT

:SECS
REM 计算从1970年初至指定日期时间所经过的秒数(SECS):     CALL:SECS "YYYY/NN/DD HH:MM:SS"
FOR /F "TOKENS=1-6 DELIMS=:,/, " %%A IN ('ECHO %~1') DO (
        SET /A YP=0
        SET /A TM=%%A-1 2>NUL
        IF !TM! GTR 0 (FOR /L %%I IN (1970,1,!TM!) DO (
                CALL :RY %%I
                IF "!RRR!"=="Y" SET /A YP+=1
        ))
        SET /A DAYS=%%A*365-1970*365+!YP! 2>NUL
        REM 此刻的!DAYS!为“从1970年初至指定年份的前一年末,经历的总天数。”

        IF %%B GTR 1 (SET /A TM=%%B-1 2>NUL
                SET /A DAYS=!DAYS!+!TM!*30
                FOR /L %%I IN (1,1,!TM!) DO (FOR %%K IN (1 3 5 7 8 10) DO (IF %%I EQU %%K SET /A DAYS+=1))
        )       
        IF %%B GTR 2 (CALL :RY %%A&IF "!RRR!"=="Y" (SET /A DAYS-=1) ELSE (SET /A DAYS-=2))
        REM 此刻的!DAYS!为“从1970年初到指定月份的前一月末 ,经历的总天数。”

        SET /A DAYS=!DAYS!+%%C-1
        REM 此刻的!DAYS!为“从1970年初到指定日期的前一日末 ,经历的完整总天数。”

        SET /A SECS=!DAYS!*24*60*60+%%D*60*60+%%E*60+%%F 2>NUL       
)       
GOTO :EOF


:RY
REM 判断闰年的条件:四年一闰,百年不闰,四百年再闰:“1、能被4整除,但不能被100整除; 2、能被400整除”
SET RRR=N
SET /A N1=%1%%4
SET /A N2=%1%%100
SET /A N3=%1%%400
IF %N3% EQU 0 (SET RRR=Y)
IF %N1% EQU 0 (IF %N2% NEQ 0 (SET RRR=Y))
GOTO :EOF


点评

longsifeng  你字多。你是大神!  发表于 2020-11-1 14:36 IP属地浙江
Kitty-Katswell  For循环大法好,哈哈  发表于 2020-11-1 13:45 IP属地河南
1

查看全部评分

Rank: 7Rank: 7Rank: 7

UID
1116025
帖子
2377
PB币
6360
贡献
0
技术
0
活跃
1804
18F
发表于 2020-11-1 13:40:53 IP属地山东 |只看该作者
各位大神好厉害

Rank: 7Rank: 7Rank: 7

UID
1808920
帖子
3576
PB币
3961
贡献
0
技术
73
活跃
2570
19F
发表于 2020-11-1 14:18:32 IP属地河北 |只看该作者
chiannet 发表于 2020-11-1 13:19
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
CALL :SECS "%DATE:~0,10% %TIME:~0,8%"

还有一个问题。。就是如果一个目录中的文件全超期了。。运行后这么目录就成了空目录。。。

那么,大神可否继续。。。就是删除指定目录中的所有空目录。。(空目录中有下级空目录的话,也要删除。。。)

如果可以就完美了。。。。

谨求赐教.........

Rank: 5Rank: 5Rank: 5

UID
794912
帖子
710
PB币
1184
贡献
0
技术
44
活跃
1329
20F
发表于 2020-11-1 14:38:37 IP属地湖南 |只看该作者
gshwlj 发表于 2020-11-1 14:18
还有一个问题。。就是如果一个目录中的文件全超期了。。运行后这么目录就成了空目录。。。

那么,大神 ...

在17楼代码 “pause” 前插入一行,内容如下:
FOR /F "TOKENS=*" %%I IN ('DIR /S /B /AD^|SORT /R') DO RD "%%I"
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛