Скопировать список файлов с тем же именем, но с разными расширениями - PullRequest
0 голосов
/ 10 декабря 2018

Я работаю с сотнями ESRI шейп-файлов и LiDAR файлов.Каждый файл имеет одинаковое имя, но разное расширение.В основном, первичный файл и несколько вторичных файлов.У меня есть список имен файлов (за исключением расширений), который мне нужно скопировать из одного места (C:\Source) в другой пустой каталог (C:\Destination).

Например, у меня есть текстовый файл со списком файлов, которые я хочу скопировать: A, C и т. Д. (Только имя файла, не включая расширения или путь к каталогу).

Исходный каталог содержит файлы:

A.shp
A.shx
A.dbf
B.shp
B.shx
B.dbf
C.shp
C.shx
C.dbf
C.prj

Я хочу скопировать все файлы для A и C только в целевой каталог (но не в имя файла B).Кроме того, шейп-файлы должны иметь как минимум эти три файла, но могут иметь или не иметь несколько дополнительных файлов (.prj, .sbn, .shp .xml, .cpg и более).

Example source directory, text file, and destination directory, with script.

1 Ответ

0 голосов
/ 11 декабря 2018

Вот возможное решение:

@echo off

cd /d full_path\you\have\your_list
for /f "delims=" %%A IN (your_list.txt) do copy "C:\Source\%%A.*" "C:\destination\"

Вышеупомянутое решение было для командного файла.Для cmd вы можете просто:

cd /d full_path\you\have\your_list
for /f "delims=" %A IN (your_list.txt) do copy "C:\Source\%A.*" "C:\destination\"

delims= опция используется, чтобы не разбивать строки файла.По этой причине я процитировал исходный и целевой путь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...