2017-03-05 7 views
0

私が持っているこのようなフォルダ構造で画像ファイルがたくさん:今ファイルをコピーし

/Foldername1 (hohe Auflösung)/PictureRANDOMNAME1-FB.jpg 
/Foldername1 (hohe Auflösung)/PictureRANDOMNAME2-FB.jpg 
[...] 
/Foldername2 (hohe Auflösung)/PictureRANDOMNAME1-SW.jpg 
/Foldername2 (hohe Auflösung)/PictureRANDOMNAME2-SW.jpg 
[...] 
/Foldername3 (hohe Auflösung)/PictureRANDOMNAME1-SP.jpg 
/Foldername3 (hohe Auflösung)/PictureRANDOMNAME2-SP.jpg 
[...] 

私はこのように、これらの画像ファイルの一部のリストをfilelist.txtを持っている:

PictureRANDOMNAME1, PictureRANDOMNAME3, [...] 

私はすべてのサブフォルダのうち、テキストファイルリスト内の文字列(複数可)に一致するすべての画像をコピーしたいです新しいフォルダ構造を維持したまま、移動先(移動しない)

多分私はすべてのサブフォルダを持つメインフォルダにfilelist.txtをコピーして実行し、同じフォルダ構造を取得しますが、別のデスティネーションの必要なファイルのみを使用するバッチファイルが必要です。

これはパスとウムラウトのスペースである場合があります。

私の悪い英語のために申し訳ありません。私は正直言ってベストを尽くした。たぶん一部のネイティブスピーカーが編集をより理解しやすくするかもしれない。

+0

https://stackoverflow.comは無料のスクリプト/コード作成サービスではありません。これまでに試したこと(既に使用しているスクリプト/コードを含める)とどこにいるのかを教えていただければ、特定の問題を解決することができます。 [良い質問をするにはどうすればいいですか?](https://stackoverflow.com/help/how-to-ask)も読んでください。 – DavidPostill

答えて

0
@echo off 
setlocal 
:: This copies the tree structure from sourcedir to destdir 
xcopy /t /e sourcedir destdir 
:: This reads the filenames and copies the required files 
for /f "delims=" %%a in (filelist.txt) do (
for %%b in (%%a) do xcopy /s /e sourcedir\%%b* destdir 
) 

%%aは、ファイルから行を取得します。各行はコンマで区切られているので、%%bは行の各名前にxcopyを実行します。

xcopy行の末尾に>nulを追加して、必要に応じてレポートを抑制することができます。

/は、winbatchのスイッチを示します。\は、ディレクトリセパレータです。

この手順はテストされていません。私はあなたのライブデータのためにそれに頼る前にそれを確認するために、小さなダミーのサブディレクトリツリーに対してそれを試してみることをお勧めします。

関連する問題