2013年9月21日土曜日

Z10_Main /splxpatcopy.bat

@echo off

rem =設定事項 ==================================================================
set logfile="D:\task\splx\logs\%date:~0,4%-%date:~5,2%-%date:~8,2%_%~n0.log"
set logtext="D:\task\splx\%~n0.txt"

rem =設定事項 ==================================================================
set skipcnt=30
set logsdir="logs"
set filter="*.log"
rem ============================================================================
echo on

rem ログファイルの初期化処理
del %logtext%

ver
echo "#=========================================================================" >> %logtext% 2>&1
echo "# Server Protect For Linix パターンファイルの処理 " >> %logtext% 2>&1
echo "#        " >> %logtext% 2>&1
echo "# << BATH NAME >> " >> %logtext% 2>&1
echo "# NAME :%0 コマンドラインでの実行ファイル名 " >> %logtext% 2>&1
echo "# PARAMETER :%1 パラメータ " >> %logtext% 2>&1
echo "# PATH :%~DP0 ドライブ文字とパス " >> %logtext% 2>&1
echo "# FULL NAME :%~NX0 ファイル名と拡張子 " >> %logtext% 2>&1
echo "# ------------------------------------------------------------------------" >> %logtext% 2>&1
echo "# EXCUTE :%date% %time% " >> %logtext% 2>&1
echo "# ------------------------------------------------------------------------" >> %logtext% 2>&1
echo "# << BATH PARAMETERS >> " >> %logtext% 2>&1
echo "# LOGDIR :%logsdir% " >> %logtext% 2>&1
echo "# SKIPCOUNT :%skipcnt% " >> %logtext% 2>&1
echo "# FILTER :%filter% " >> %logtext% 2>&1
echo "#        " >> %logtext% 2>&1
echo "#=========================================================================" >> %logtext% 2>&1

rem バッチパラメータ1 
rem BLANK:Proxy 環境 iVMIXVI01 (internet アクセス)
rem 1:Proxy 指定なしの環境 sav1dm12,savdm13(社内ネットアクセス)

ver
echo "#=========================================================================" >> %logtext% 2>&1 
echo "# (1) lpvパターンファイルのコピー " >> %logtext% 2>&1
echo "# CREATER IT-SYSTEM-G " >> %logtext% 2>&1
echo "# EXCUTE %date% %time% " >> %logtext% 2>&1 
echo "# LOG :%logfile% " >> %logtext% 2>&1
echo "#=========================================================================" >> %logtext% 2>&1

rem call cscript //Nologo scripts/Z10_Mainlvp.vbs >> %logfile%

rem echo "# ** (1) lpvパターンファイルのコピー処理 終了 **" >> %logtext% 2>&1

echo "#=========================================================================" >> %logtext% 2>&1 
echo "# (2) サーバプロテクトパターンのダウンロードと展開 " >> %logtext% 2>&1
echo "# CREATER IT-SYSTEM-G " >> %logtext% 2>&1
echo "# EXCUTE %date% %time% " >> %logtext% 2>&1 
echo "# LOG :%logfile% " >> %logtext% 2>&1
echo "#=========================================================================" >> %logtext% 2>&1

setlocal enabledelayedexpansion
call cscript //Nologo scripts/Z10_Main.vbs %1 >> %logfile%
endlocal

echo "# ** (2) サーバプロテクトパターン処理終了 **" >> %logtext% 2>&1

echo "#=========================================================================" >> %logtext% 2>&1
echo "# (3) 一定ファイル数超えたら古いログファイルを削除 " >> %logtext% 2>&1
echo "# << BATH NAME >> " >> %logtext% 2>&1
echo "# ------------------------------------------------------------------------" >> %logtext% 2>&1
echo "# EXCUTE :%date% %time% " >> %logtext% 2>&1
echo "# ------------------------------------------------------------------------" >> %logtext% 2>&1
echo "# << 関連パラメータ >> " >> %logtext% 2>&1
echo "# LOGDIR :%logsdir% " >> %logtext% 2>&1
echo "# SKIPCOUNT :%skipcnt% " >> %logtext% 2>&1
echo "# FILTER :%filter% " >> %logtext% 2>&1
echo "#=========================================================================" >> %logtext% 2>&1

cd %logsdir%

echo off
echo "#-------------------------------------------------------------------------" >> %logtext% 2>&1
echo "# (3-1) 削除処理の対象件数の判定処理 " >> %logtext% 2>&1
echo "# %date% %time% " >> %logtext% 2>&1
echo "#-------------------------------------------------------------------------" >> %logtext% 2>&1

for /F %%a in ('dir /a:-d ^| find "個のファイル"') do set files=%%a

echo ログファイルの個数は現在、%files%個です。>> %logtext% 2>&1

if %files% GTR %skipcnt% goto Over:
echo "# ログファイル件数の%skipcnt%個以下のため、削除処理は実行しない。#" >> %logtext% 2>&1
echo "# ** (3-1) 終了 **" >> %logtext% 2>&1

rem pause

exit

:Over
echo "#--------------------------------------------------------------------------" >> %logtext% 2>&1
echo "# (3-2) 削除処理前 ファイル名一覧(名前の降順) " >> %logtext% 2>&1
echo "# %date% %time% " >> %logtext% 2>&1
echo "#--------------------------------------------------------------------------" >> %logtext% 2>&1

dir /o-n %filter% /tc >> %logtext% 2>&1

for /F "skip=%skipcnt%" %%a in ('dir /b /o-n %filter%') do (del %%a) >> %logtext% 2>&1

echo "# ** (3-2) 終了 **" >> %logtext% 2>&1

echo "#--------------------------------------------------------------------------" >> %logtext% 2>&1
echo "# (3-3) 削除処理後 ファイル名一覧(名前の降順) " >> %logtext% 2>&1
echo "# %date% %time% " >> %logtext% 2>&1
echo "#--------------------------------------------------------------------------" >> %logtext% 2>&1
dir /o-n %filter% /tc >> %logtext% 2>&1

echo "# ** (3-3) 終了 **" >> %logtext% 2>&1

echo "# ** (3)  ログファイル管理処理 終了 **" >> %logtext% 2>&1
rem pause

:Exit

exit