скопировать список файлов в папке в другую папку - PullRequest
1 голос
/ 08 января 2010

У меня есть папка с примерно 10000 изображений, и мне нужно скопировать около 500 из них в другую папку.

Если я создаю список файлов, которые я хочу скопировать, как я могу скопировать файлы в файлы?

Думал vbscript или возможны ли полные команды DOS, такие как Xcopy, с помощью переключателей?

Спасибо

Ответы [ 2 ]

3 голосов
/ 08 января 2010

при условии, что у вас есть список файлов в текстовом файле, вот vbscript

Set objFS=CreateObject("Scripting.FileSystemObject")
Set objArgs = WScript.Arguments
strFile = objArgs(0)
strDestination = objArgs(1)
Set objFile =objFS.OpenTextFile(strFile)
Do Until objFile.AtEndOfLine
    strLine = objFile.ReadLine
    objfs.CopyFile strLine,strDestination &"\"&strLine
Loop

сохранить как myscript.vbs и в командной строке

C:\test>more file
test1.txt
test2.txt

c:\test> cscript //nologo myscript.vbs file c:\destination\directory

ИЛИ если вам нужна партия

@echo off
for /F %%i in (file) do (  copy "%%i" c:\destination   )

если вы хотите переместить список файлов по некоторому шаблону, просто выполните

c:\test> copy *pattern*.txt c:\destination
2 голосов
/ 08 января 2010

Для одноразового использования в командной строке подготовьте файл filenames.txt, по одному имени в строке. Тогда выпустите:

for /f %n in (filenames.txt) do copy "%n" "t:\arget\folder"

для VBScript, вы можете достичь того же, используя Scripting.FileSystemObject и его близких родственников (например, объекты File и Folder), но в сравнении это сложнее. Ответ ghostdog74 показывает один путь.

...