Board logo

标题: [文件操作] 求助批处理移动文件 [打印本页]

作者: 水煮水    时间: 6 天前 17:02     标题: 求助批处理移动文件

本帖最后由 水煮水 于 2024-11-29 18:18 编辑

各位论坛大神,求助一个批处理

1、我提供一个list.txt,里面有很多行,每一行都是一个文件名称(文件名.格式)
2、批处理代码里,可以让我指定一个A路径,指定一个B路径,一个路径C,再指定一个数字N,
3、运行这个批处理的时候,按下面顺序去执行:
    A、把B路径里所有文件移动到路径C里面
    B、延时10秒
    C、在A路径里面,把list.txt里的第1行的这个文件(肯定在A路径下的),直接移动到路径B,延迟1秒,再把第2行的这个文件,直接移动到路径B,延迟1秒 。。。。。。。。以此类推,循环处理,一直把第N行的这个文件,移动到路径B
    D、延时10秒
    E、再把list.txt的前N行文字删除,并删除留下来的空行,使得第N+1行移动到第1行,第N+2行移动到第2行,以此类推
作者: aloha20200628    时间: 6 天前 18:27

本帖最后由 aloha20200628 于 2024-11-29 18:41 编辑

回复 1# 水煮水
以下代码存为 test.bat 运行,与 list.txt 同目录
可自定义代码第一行中的 pathA, pathB, n 三个变量值
  1. @echo off & set "pathA=d:\a" &set "pathB=d:\b" &set "n=10"
  2. (for /L %%a in (1,1,%n%) do (
  3.     set/p "F=" &setlocal enabledelayedexpansion
  4.     if exist "%pathA%\!F!" move /y "%pathA%\!F!" "%pathB%\"
  5.     endlocal))<list.txt
  6. echo,暂停10秒后自动继续...&timeout /t 10 >nul
  7. more +%n% list.txt|findstr /v "^$">"0.0"&move /y "0.0" list.txt
  8. pause&exit/b
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2