【问题标题】:Need Help Writing A Batch Script To Move Certain Files From One Folder To Another需要帮助编写批处理脚本以将某些文件从一个文件夹移动到另一个文件夹
【发布时间】:2013-10-14 21:35:36
【问题描述】:
我需要帮助编写一个可以运行的批处理脚本,该脚本将获取文件名列表 ["FileA.jpg"、"FileB.jpg"、"FileC.jpg"](这些文件名可以是文本格式或csv)并在文件夹A中找到这些文件,然后将它们复制到文件夹B中。
如果有一种简单的方法可以使用另一种脚本来做到这一点,我绝对愿意接受。我只需要找出一种自动化的方式来完成工作。
这是我第一次提出问题并收到反对票……对此的解释也可能会有所帮助。
非常感谢您的帮助。
【问题讨论】:
标签:
windows
batch-file
scripting
【解决方案1】:
试试这个,它需要一个文本文件,它包含一个简单列表格式的所有文件的列表,没有引号,称为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!"
)
这应该可以正常工作。
莫娜
【解决方案2】:
这对我有用
- 创建一个名为 list.txt 的 txt,其中包含您要移动的文件名列表,并将其保存在您的原始文件夹中。
2.使用以下代码制作一个bat文件并将其保存在origin文件夹中。
3.现在运行您以管理员权限保存的bat文件。
-
文件将被复制到 C:\copied
@echo 关闭
REM (c) 2015
CLS
标题文件查找器
REM 在 list.txt 文件中查找文件并将它们复制到 C:\copied
REM 检查管理员权限
复制 /b/y NUL %WINDIR%\06CF2EB6-94E6-4a60-91D8-AB945AE8CF38 >NUL 2>&1
如果错误级别 1 转到:非管理员
DEL %WINDIR%\06CF2EB6-94E6-4a60-91D8-AB945AE8CF38 >NUL 2>&1
:行政
REM 有管理员权限
颜色 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) 复制完成
暂停
转到:EOF
:非管理员
REM 无管理员权限
颜色 4F
回声。
ECHO 请以管理员身份运行
回声。
暂停
转到:EOF