2021年12月5日日曜日

 @echo off

rem  入力

rem  [JCL] -- Exx20.txt

rem  [CMP] -- Exx20.txt

rem  [PACK]

rem  ・実行:PACK2.bat

rem  出力

rem     [Exx20_x回目(yymmdd)]

rem        -- Exx20_COPY_JCL.txt 

rem        -- [本番データ取得_エビデンス]

rem              Exx20_COPYSTEP新旧比較エビデンス.txt

rem 遅延環境変数を設定

setlocal ENABLEDELAYEDEXPANSION

 SET EJOB=

 rem ラベル「:loop」

:loop


rem ユーザーからの入力を変数「text」に代入する

set /p text="yymmddの値を入力してください…:"

rem 「exit」と入力されたとき、バッチファイルを終了する

if "%text%" == "exit" goto :end

rem ラベル「:loop」に戻る

rem goto :loop

if "%text%" == "" Set text=yymmdd


echo %text%

pause

rem --------------------------------------

rem 一覧取得

rem --------------------------------------

 DIR /b ..\JCL\*.txt>list.txt

rem --------------------------------------

rem 実行

rem --------------------------------------

 set /a n=0

 FOR /F %%a IN (list.txt) DO (

   rem echo %%a

   SET EJOB=%%a

   rem SET EJOB=!EJOB:~,5!

   SET /a n=n+1

   SET EJOB=!EJOB:.txt=!

   echo !n! ###!EJOB!###

   call:Pack2 !EJOB! !text!

 )

 echo :

 echo === !n! 件、処理しました。===

 pause

:end

 exit /b


rem --------------------------------------

rem パッキングする

rem --------------------------------------

:Pack2

   SET TGT_FD=!EJOB!

   ECHO ■!TGT_FD!■

   IF EXIST !TGT_FD! RD !TGT_FD! /S /Q

   MD !TGT_FD!

   IF EXIST ..\JCL\!EJOB!.txt (

      COPY ..\JCL\!EJOB!.txt !TGT_FD!\!EJOB!_COPY_JCL.txt 

   ) ELSE (

     echo ..\JCL\!EJOB!.txtは存在しません。

   )


   IF EXIST ..\CMP\!EJOB!.txt (

      COPY ..\CMP\!EJOB!.txt !TGT_FD!\!EJOB!_COPYSTEP新旧比較エビデンス.txt

   ) ELSE (

     echo ..\CMP\!EJOB!.txtは存在しません。

   )

   EXIT /b

endlocal