找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 74621|回复: 16

[文件操作] [已解决]求批处理定时批量剪切文件a文件夹到b文件夹

[复制链接]
发表于 2021-5-19 22:49:06 | 显示全部楼层 |阅读模式
本帖最后由 任贤齐 于 2021-5-20 09:21 编辑

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

请问各位批处理之家的大佬们

这个如何去写?谢谢 好人一生平安!
发表于 2021-5-19 23:41:28 | 显示全部楼层
任达华,任我行 ……
发表于 2021-5-19 23:41:53 | 显示全部楼层

  1. SCHTASKS /Create /TN new1 /sc daily /st 9:00  /tr a.bat
  2. SCHTASKS /Create /TN new2 /sc daily /st 15:00  /tr a.bat
复制代码

  1. set n=0
  2. for /f "usebackq delims=" %%a in (`dir /b d:\*.html`) do (
  3.     set n+=1
  4.     if !n!==200 goto :END
  5.     move "%%a" f:\b\
  6. )

  7. :END
复制代码

评分

参与人数 2技术 +2 收起 理由
任贤齐 + 1 技术厉害
523066680 + 1 感谢分享

查看全部评分

 楼主| 发表于 2021-5-20 08:51:05 | 显示全部楼层
回复 3# newswan


    感谢newswan大神,已经实现自动剪切,可是每一次剪切的时候不是200,是把所有的html文件都剪切过去了 ,改代码里的数字也不管用呢?请问是哪里的问题
谢谢您的热心,好运常伴
发表于 2021-5-20 09:03:02 | 显示全部楼层
本帖最后由 newswan 于 2021-5-20 09:05 编辑

回复 4# 任贤齐

  1.     set /a n+=1
  2.     move "%%a" f:\b\
  3.     if !n!==2 goto :END
复制代码
循环体内有误,低级错误。。。
 楼主| 发表于 2021-5-20 09:08:33 | 显示全部楼层
回复 5# newswan


    哇哦 完美解决,多谢多谢
你就是今天我生命中最亮的仔 点赞!
 楼主| 发表于 2021-5-20 09:09:02 | 显示全部楼层
回复 2# 523066680


    多谢版主支持,姓任的明星不少呀
 楼主| 发表于 2021-5-20 12:53:50 | 显示全部楼层
set n=0
for /f "usebackq delims=" %%a in (`dir /b d:\a\*.html`) do (
   set /a n+=1
    move "%%a" f:\b\
    if !n!==2 goto :END
)

:END

有个小问题,老大,就是这个bat我只能在源目录下执行,我如果拖到桌面或者其他目录会提示[系统找不到指定文件]
我修改d:\a\ 这样的路径名也无济于事

请问我怎么能在桌面执行呢?
 楼主| 发表于 2021-5-20 12:53:50 | 显示全部楼层
set n=0
for /f "usebackq delims=" %%a in (`dir /b d:\a\*.html`) do (
   set /a n+=1
    move "%%a" f:\b\
    if !n!==2 goto :END
)

:END

有个小问题,老大,就是这个bat我只能在源目录下执行,我如果拖到桌面或者其他目录会提示[系统找不到指定文件]
我修改d:\a\ 这样的路径名也无济于事

请问我怎么能在桌面执行呢?
发表于 2021-5-20 14:44:40 | 显示全部楼层
本帖最后由 qixiaobin0715 于 2021-5-21 16:26 编辑

原因是:%%a只显示了文件名及扩展名,执行move命令时,只会在当前文件夹即批处理所在的文件夹中寻找此文件。所以会提示找不到文件,cd指向源目录。
  1. set n=0
  2. cd /d "d:\a"
  3. for /f "usebackq delims=" %%a in (`dir /b *.html`) do (
  4. ...以下保留原样
复制代码
已修改部分错误。
 楼主| 发表于 2021-5-20 15:00:54 | 显示全部楼层
回复 11# qixiaobin0715


    非常感谢,用cd命令已经实现 for前面加个cd /d "d:\a\" 好了
您说的另一种方法,没有测试成功,不知道哪里的问题,  源目录 d:\a\  目标目录  f:\b\
  1. move "%%~fa" "f:\b"
复制代码
 楼主| 发表于 2021-5-21 14:38:15 | 显示全部楼层
回复 13# qixiaobin0715


    老大好,多次测试,还是提示找不到路径
你可以把完整的发出来 我直接复制试试 信息
发表于 2021-5-21 15:20:20 | 显示全部楼层
回复 14# 任贤齐
是我想错了:
  1. move "D:\a\%%a" "F:\b"
复制代码
 楼主| 发表于 2021-5-21 16:43:20 | 显示全部楼层
回复 13# qixiaobin0715


    已成功,多谢老大 向你学习
发表于 2021-5-21 21:45:08 | 显示全部楼层
回复 9# 任贤齐


    能不能用code
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 17:33 , Processed in 0.028067 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表