Как выбрать имена файлов в папке A из папки B?

Например

Папка А содержит файлы 1,2,6,7.

Папка B содержит файлы 1,2,3,4,5,6,7,8,9,10

Поэтому мне нужно только выбрать файлы, которые находятся в папке A 1,2,6,7 из папки B.

У меня около 1K + файлов в папке B, но мне нужны только те, которые перечислены в папке A, что меньше 1k. Но я не хочу выбирать файлы из папки B по одному в соответствии с файлами в папке A.

2 ответа2

2

Я понял.

Я использовал dir D:\Game\Cap /s /b > D:\Game\Cap\list.txt

составить список нужных мне файлов. Затем я перемещаю этот list.txt в папку B

и запустил этот скрипт, который я нашел в Интернете:

@echo off
REM BATCH file Created by NEUTRON16 (sevenforums.com)
CLS
REM CHECK FOR ADMIN RIGHTS
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
COLOR 1F
ECHO Hi, %USERNAME%!
ECHO Please wait...
for /f "usebackq delims=" %%a in ("%~dp0list.txt") do echo d |xcopy "%%a" "D:\Game\Bin" /e /i
COLOR 2F
ECHO.
ECHO BATCH file Created by Neutron16 (sevenforums.com)
PAUSE
GOTO:EOF
:NONADMIN
REM NO ADMIN RIGHTS
COLOR 4F
ECHO.
ECHO PLEASE RUN AS ADMINISTRATOR
ECHO.
pause
GOTO:EOF

И это сработало!

0

Для этого 1. Вам понадобятся полные пути к папке A: вам нужно перейти в папку A, нажать на адресную строку и скопировать полный путь

Это будет что-то вроде C:\foldername\foldername2\foldername3

  1. Скопируйте полный путь к папке назначения, используя описанный выше метод. Теперь вам нужно открыть командную строку: и введите

Переместить pathtofolderA\*. * pathtodestinationfolder

Пример: переместить C:\user\documents\*.* C:\user\downloads\

Я думаю, что путь чувствителен к регистру кто-то может исправить меня ..

Редактировать: Пакетный файл

    for %f in (c:\pathtofolderA\*) do copy c:\pathtofolderB\%f c:\destinationpath

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .