自动化——bat——批量复制所选的文件

需求

问你一个问题,我要怎么根据excel清单里面的信息在1000份那个PDF文件里面,筛选出我要的那几百份文件出来单独放到一个文件夹里。

bat脚本

第一步:将以下内容复制到txt文件,并将文件后缀名更改为.bat

python 复制代码
@echo off
setlocal enabledelayedexpansion

:: 设置路径
set "source_folder=C:\Users\qq\Desktop\1"
set "target_folder=C:\Users\qq\Desktop\2"
set "file_list=C:\Users\qq\Desktop\1\list.txt"

:: 创建目标文件夹
if not exist "%target_folder%" mkdir "%target_folder%"

:: 读取文件列表并复制匹配的文件
for /f "usebackq delims=" %%a in ("%file_list%") do (
    if exist "%source_folder%\%%a" (
        copy "%source_folder%\%%a" "%target_folder%\" >nul
        echo 已复制: %%a
    ) else (
        echo 未找到: %%a
    )
)

echo 操作完成!
pause

更改效果如下

第二:根据你电脑的实际路径,修改以下三个参数

第一个参数:

set "source_folder=C:\Users\qq\Desktop\1"

这里主包的路径是自己电脑路径,就不用改了,如果你的电脑路径假设是:C:\ZHUTOU\1,那你就改成这样:set "source_folder=C:\ZHUTOU\1",尽量都是英文,中文的话要加双引号

第二个参数:

set "target_folder=C:\Users\qq\Desktop\2"

第三个参数:

set "file_list=C:\Users\qq\Desktop\1\list.txt"

效果