需要帮助编写批处理脚本将某些文件从一个文件夹移动到另一个文件夹

时间:2013-10-14 21:35:36

标签: windows batch-file scripting

我需要帮助编写一个我可以运行的批处理脚本,它将采用文件名列表[“FileA.jpg”,“FileB.jpg”,“FileC.jpg”](这些文件名可以是文本format或csv)并在文件夹A中找到这些文件,然后将它们复制到文件夹B中。

如果有一种简单的方法可以使用其他类型的脚本执行此操作,我绝对愿意接受。我只需要找出一种自动完成工作的方法。

这是我第一次提出问题并收到了downvotes ......对此的解释也可能有所帮助。

先谢谢你的帮助。

2 个答案:

答案 0 :(得分:2)

试试这个,它需要一个文本文件,其中包含一个简单列表格式的所有文件列表,没有名为input.txt的引号:

@echo off
setlocal enabledelayedexpansion
set "FolderA=C:\..[path]"
set "FolderB=C:\...[path]"
REM Above do not end the path with "\"

for /f "tokens=*" %%a in (input.txt) do (
copy "!FolderA!\%%~a" "!FolderB!\"
Echo Copied "%%~a" to "!FolderB!"
)

这应该可以正常工作。

莫纳

答案 1 :(得分:0)

这对我有用

  1. 创建一个名为list.txt的txt,其中包含您要移动的文件名列表,并将其保存在origin文件夹中。 2.使用以下代码制作bat文件并将其保存在origin文件夹中。 3.现在运行您使用管理员权限保存的bat文件。
  2. 文件将以C:\ copied

    复制

    @echo off REM(c)2015 CLS TITLE文件查找器 REM在list.txt文件中查找文件并将其复制到C:\ copied REM检查管理员权利 COPY / b / y NUL%WINDIR%\ 06CF2EB6-94E6-4a60-91D8-AB945AE8CF38> NUL 2>& 1 IF ERRORLEVEL 1 GOTO:NONADMIN DEL%WINDIR%\ 06CF2EB6-94E6-4a60-91D8-AB945AE8CF38> NUL 2>& 1 :ADMIN REM GOT ADMIN RIGHTS 颜色1F ECHO嗨,%USERNAME%! ECHO请稍候...... FOR / R"%~dp0" %% I IN(。)DO for / f" usebackq delims =" %% a in("%~dp0list.txt")do echo d | xcopy" %% I \ %% a" " C:\份" / e / i 颜色2F 回声。 ECHO(c)复制完成 暂停 GOTO:EOF :非管理员 REM没有管理权 颜色4F 回声。 ECHO请作为管理员运行 回声。 暂停 GOTO:EOF