定时按照一定数量批量剪切文件从a文件夹到b文件夹的批处理

admin
🌐 经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用 点我优惠购买
🚀 拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多 点我优惠购买
🛡️ 稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少 点我优惠购买

文章最后更新时间:2023年05月25日已超过604天没有更新。

项目需求: 

1
2
我d盘有个a文件夹,里面有10000个html的文件,
我想实现每天早上9点和下午3点,每次剪切200个到f盘的b文件夹里,直到1W个文件剪贴完

 解决方法: 

1
2
SCHTASKS /Create /TN new1 /sc dAIly /st 9:00  /tr a.bat
SCHTASKS /Create /TN new2 /sc daily /st 15:00  /tr a.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 ::变量延迟  要不然n一直是0
@echo off&setlocal enabledelayedexpansion
::设置变量初始值
set n=0
::进入源目录
cd /d "f:\a\"
::源目录下面的.html文件
for /f "usebackq delims=" %%a in (`dir /b *.html`) do (
    ::变量每次+1
    set /a n+=1
    ::剪切到的目标目录
    move "%%a" f:\b\
    ::如果变量等于2就结束
    if !n!==2 goto :END
)
:END


拓展,每次复制指定范围内的文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 ::变量延迟  要不然n一直是0
@echo off&setlocal enabledelayedexpansion
::设置变量初始值
set n=0
::设置随机数的最小和最大值以及求模用的变量 我们想获得1到3之间的随机数
set min=1
set max=3
set /a mod=%max%-%min%+1
set /a var=%random%%%%mod%+%min%
:: set /a d=%random:~0,2%   取随机两位数
::源目录下面的.html文件
::进入源目录
cd /d "f:\a\"
::for循环查询目录下的.html文件
for /f "usebackq delims=" %%a in (`dir /b *.html`) do (
    ::变量每次+1
    set /a n+=1
    ::剪切到的目标目录
     move  "%%a" "f:\b\"
    ::如果变量等于2就结束
    if !n!==%var% goto :END
)
:END
1
2
或者不写cd 这行
在move行改为  move  "d:\a\%%a" "F:\b"



文章版权声明:除非注明,否则均为执刀人的工具库原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
验证码
评论列表 (暂无评论,402人围观)

还没有评论,来说两句吧...

目录[+]

取消
微信二维码
微信二维码
支付宝二维码