2017-05-23 7 views
1

Ich habe eine Liste von Dateinamen ohne ihre Erweiterung und einen Ordner und Unterordner dieser Dateien mit ihren Erweiterungen. Ich versuche, die Liste zu verwenden, um diese Dateien an einen anderen Speicherort zu kopieren. Ich habe versucht, ein Skript, das ich hier zu bedienen und modifiziert es:Kopieren mit einer Dateiliste

@echo off 
FOR /R "P:\Case\MyCase\Productions" %%G in (.) do (
    for /F "delims=" %%i in (UniqueFileList.txt) do (
    if exist %%G\%%i.* xcopy %%G\%%i.* "C:\Temp\CopiedFiles" /D /Y 
) 
) 

Meine Dateinamen sind TIN00001.msg, TIN00002.txt, TIN00003.jpg, etc ...

und die Namen in meiner Datei Liste ist TIN00001, TIN00002, TIN00003, etc ...

Wie kann ich ein Skript verwenden, um die Dateien zu kopieren?

Jede Hilfe wird geschätzt.

Danke !!

Mustu

Antwort

0

Ich bin mir nicht sicher, ob ich Ihre Absicht, aber meine beste Vermutung ist, dass so etwas wie dies voll und ganz verstehen würde zu Ihnen passen.

@Echo Off 
Set "rootDir=P:\Case\MyCase\Productions" 
Set "destDir=C:\Temp\CopiedFiles" 
Set "listTxt=%~dp0UniqueFileList.txt" 

For /F "Delims=" %%A In ('Where/R "%rootDir%" *.*^|FindStr/LIG:"%listTxt%"' 
) Do FindStr/LIX "%%~nA" "%listTxt%">Nul 2>&1 && XCopy "%%A" "%dstDir%" /D /Y 

Wenn %listTxt% ist nicht in der gleichen Position wie das Skript dann Ort zu einem vollständigen Pfad zu es ändern.

+0

danke für das Skript. Ich versuchte es und modifizierte es meinen Ordner zum Spiel: – Mustu

+0

@Echo Off Set "RootDir = G: \ Vertex01" Set "DESTDIR = C: \ Temp \ Search05" Set "listTxt =% ~ dp0Search05.txt" Für/F "Delims =" %% A In ('Wo/R "% WurzelDir%" *. *^| FindStr/LIG: "% listTxt%"' ) FindStr/LIX "%% ~ nA" "% listTxt% "> Nul 2> & 1 && XCopy" %% A ""% dstDir% "/ D/Y – Mustu

+0

und es heißt" Invalid drive specification "," 0 Dateien kopiert " – Mustu

Verwandte Themen