2017-06-24 30 views
0

Windows 10を使用しています。へのバッチファイルを作成します。複数のフォルダのファイルを別の単一フォルダに移動します。私は、テキストファイルにリストされているファイルを移動する必要があります。 いくつかの質問が出てくる:テキストファイルはどこにある必要がありますか重要ではありませんか?バッチファイルは特定のフォルダから実行する必要がありますか?私は多くの経験を持っていないので、どんな助けも高く評価されるでしょう。事前に感謝しています! \ユーザーはブライアン\デスクトップ\生産を\:ここテキストファイルにリストされているファイルをあるフォルダから別のフォルダに移動するためのバッチファイル

は、私は、テキストファイルが今1つのラインを持っており、数は150252.Iは、最終的にCからより多くのファイルを移動したいです

@echo off 
set src_folder=C:\Users\Brian\Desktop\production\15XXXX 
set dst_folder=C:\Users\Brian\Desktop\preliminary\eco\170555 
set [email protected]:\Users\Brian\Desktop\preliminary\eco\170555\170555.txt 
for /f "tokens=*" %%i in (%file_list%) DO (
    echo f | move /E /C /R /Y "%src_folder%\%%i" "%dst_folder%\%%i") 

で開始するものです\ 16XXXX、C:\ Users \ Brian \ Desktop \ production \ 17XXXXなど バッチファイルをC:\ Users \ Brian \ Desktopから実行しています。私はこれを理解できるように十分な詳細を追加したことを願っています。再度、感謝します。

+2

[バッチ:txtファイルから1つのフォルダにファイルをコピーする]の可能な複製(https://stackoverflow.com/questions/9143018/batch-copy-files-from-txt-file-into-one-folder) – LotPings

+0

テキストファイルのコンテンツとレイアウトのアイデアのいくつかの並べ替えをいただければ幸いです。 **編集**機能を使用して元の投稿に追加することができます。 – Compo

+0

私はいくつかの追加情報を追加しました。ありがとう! – bnester

答えて

0

あなたは可能性が.txtファイルを通って、各ラインのループ、サブフォルダをループ、私は次の操作を実行すると、より効率的な方法であると考えているものの:

for /r "C:\Parent" %%# in (*) do findstr "%%~nx#" "list.txt"&&move "%%#" "Folder" 

このスクリプトは、再帰的に親を通過した場合にループ"list.txt"内のファイルの1つを見つけ、 "Folder"に移動します。

パスが指定されていないファイルごとに、スクリプトは作業ディレクトリを検索します。 "list.txt"は.batが存在する場所でなければなりません。

findstrを使用すると、ファイル名を.txtに1行で入力することもできます(例:file.txt bla.dat;example.mp4)。これらのファイルに空白がある場合は、findまたはfindstr /cを代わりに使用してください。

関連する問題