【使い方】
例えば、C:\TESTフォルダを作って以下のファイルを作成する
[File_Copy_01.bat] ⇒ダブルクリックで実行(※スクリプトは下記参照)
[Dir_LIST_01.txt] ⇒コピー先フォルダ記入
[exclude.txt] ⇒コピー除外ファイル記入
[コピー元のファイル] ⇒例えば、拡張子「.txt」全てが対象の場合
「File_Copy_01.bat」 ← バッチファイル名
@echo off
:---------------------------------------------------
:【0】変数セット
:---------------------------------------------------
:+++ echo %~dp0
set Path_01=%~dp0
set File_01=Dir_LIST_01.txt
set Ful_Path_01=%PATH_01%%File_01%
set PATH_02=%PATH_01%linux\
:+++ set File_02=Dir_LIST_02.txt
:+++ set Ful_Path_02=%PATH_01%%File_02%
set PATH_03=%PATH_01%win\
:+++ set File_03=Dir_LIST_03.txt
:+++ set Ful_Path_03=%PATH_01%%File_03%
:+++ echo %Ful_Path_01%
:+++ Dir /s /b /a:d .\Dir_TEST >.\Dir_LIST_01.txt
:---------------------------------------------------
:【1】開始(ループ処理)
:---------------------------------------------------
for /f %%a in (%Ful_Path_01%) do @call :F_01 %%a
:---------------------------------------------------
:【3】終了(メッセージ出力)
:---------------------------------------------------
echo .
echo ***END***
echo .
:+++ DEL /q /f .\Dir_LIST_01.txt
pause
:---------------------------------------------------
:【2】関数(ファイルコピー)
:---------------------------------------------------
:F_01
set ZzZ=%1
@echo on
XCOPY %Path_01%*.txt %ZzZ%\ /Y /EXCLUDE:C:\TEST\exclude.txt
XCOPY %Path_02%*.txt %ZzZ%\ /Y /EXCLUDE:C:\TEST\exclude.txt
XCOPY %Path_03%*.txt %ZzZ%\ /Y /EXCLUDE:C:\TEST\exclude.txt
@echo off
PR
COMMENT