機能別/ログファイル処理
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
#navi(機能別)
#contents
/////////////////////////////////////////////////////////...
*概要 [#v0276371]
各種ログファイルを一定期間保存する処理について、
処理パターンを分類して管理方法を整理する。
:共通前提|
ログファイルが、%LOG%\log.txt に毎日出力されるとする。
これを、%OLDLOG% ディレクトリに保存する。~
[[機能別/日時を得る]]手段によって、YYYYMMDD や YYYYMM と...
年月日などがセットされているものとする。~
処理日の前日の日付を使うなら、[[機能別/日時計算]]によって...
YYYYMMDD にセットする。
/////////////////////////////////////////////////////////...
*世代番号管理 [#tcaca121]
保存ログファイルに一連番号をつけ、一定世代(NMAX)を超えた...
一世代前のログファイルは log1.txt、二世代前は log2.txt 等...
set NMAX=30
for /l %%N in (%NMAX%,-1,2) do call :shift %%N
move "%LOG%\log.txt" "%OLDLOG%log1.txt"
goto :eof
:shift
set /a L=%1-1
if exist "%OLDLOG%\log%L%.txt" move /y "%OLDLOG%\log%L%....
goto :eof
/////////////////////////////////////////////////////////...
*日付ファイル名での一定日数保存(世代管理) [#b56ea92a]
保存ログのファイル名は、logYYYYMMDD.txt のように年月日を...
一定日数(NMAX)保存し、それを超えたものは削除する。
set NMAX=90
move "%LOG%\log.txt" "%OLDLOG%\log%YYYYMMDD%.txt"
for /f "skip=%NMAX% delims=" %%F in ('dir /b /o-n "%OLDL...
/////////////////////////////////////////////////////////...
*日付ファイル名でのnヶ月保存 [#wc5f1145]
保存ログのファイル名は、logYYYYMMDD.txt のように年月日を...
Nヶ月保存し、それを超えたものは削除する。
set N=3
move "%LOG%\log.txt" "%OLDLOG%\log%YYYYMMDD%.txt"
set /a M=1%YYYYMMDD:~4,2%-100
if %M% gtr %N% (set /a OLD=YYYYMMDD-N*100) ELSE (set /a ...
for %%F in ("%OLDLOG%\log????????.txt") do if %%~nF leq ...
ここでは、N は12以下とした。13ヶ月以上の場合は、年と月に...
それぞれ引き算するとよいだろう。
/////////////////////////////////////////////////////////...
*日付ファイル名でのnヶ月保存(年月ディレクトリ管理) [#c703...
保存ログのファイル名は、logYYYYMMDD.txt のように年月日を...
%OLDLOG% の下に %YYYYMM% のディレクトリを作ってそこに保存...
Nヶ月経ったらディレクトリごと削除する。
set N=3
if not exist "%OLDLOG%\%YYYYMM%\*" md "%OLDLOG%\%YYYYMM"
move "%LOG%\log.txt" "%OLDLOG%\%YYYYMM%\log%YYYYMMDD%.txt"
set /a M=1%YYYYMM:~4,2%-100
if %M% gtr %N% (set /a OLD=YYYYMM-N) ELSE (set /a OLD=YY...
if exist "%OLDLOG%\%OLD%\*" rd /s /q "%OLDLOG%\%OLD%"
ここでは、N は12以下とした。13ヶ月以上の場合は、年と月に...
それぞれ引き算するとよいだろう。
/////////////////////////////////////////////////////////...
#navi(機能別)
終了行:
#navi(機能別)
#contents
/////////////////////////////////////////////////////////...
*概要 [#v0276371]
各種ログファイルを一定期間保存する処理について、
処理パターンを分類して管理方法を整理する。
:共通前提|
ログファイルが、%LOG%\log.txt に毎日出力されるとする。
これを、%OLDLOG% ディレクトリに保存する。~
[[機能別/日時を得る]]手段によって、YYYYMMDD や YYYYMM と...
年月日などがセットされているものとする。~
処理日の前日の日付を使うなら、[[機能別/日時計算]]によって...
YYYYMMDD にセットする。
/////////////////////////////////////////////////////////...
*世代番号管理 [#tcaca121]
保存ログファイルに一連番号をつけ、一定世代(NMAX)を超えた...
一世代前のログファイルは log1.txt、二世代前は log2.txt 等...
set NMAX=30
for /l %%N in (%NMAX%,-1,2) do call :shift %%N
move "%LOG%\log.txt" "%OLDLOG%log1.txt"
goto :eof
:shift
set /a L=%1-1
if exist "%OLDLOG%\log%L%.txt" move /y "%OLDLOG%\log%L%....
goto :eof
/////////////////////////////////////////////////////////...
*日付ファイル名での一定日数保存(世代管理) [#b56ea92a]
保存ログのファイル名は、logYYYYMMDD.txt のように年月日を...
一定日数(NMAX)保存し、それを超えたものは削除する。
set NMAX=90
move "%LOG%\log.txt" "%OLDLOG%\log%YYYYMMDD%.txt"
for /f "skip=%NMAX% delims=" %%F in ('dir /b /o-n "%OLDL...
/////////////////////////////////////////////////////////...
*日付ファイル名でのnヶ月保存 [#wc5f1145]
保存ログのファイル名は、logYYYYMMDD.txt のように年月日を...
Nヶ月保存し、それを超えたものは削除する。
set N=3
move "%LOG%\log.txt" "%OLDLOG%\log%YYYYMMDD%.txt"
set /a M=1%YYYYMMDD:~4,2%-100
if %M% gtr %N% (set /a OLD=YYYYMMDD-N*100) ELSE (set /a ...
for %%F in ("%OLDLOG%\log????????.txt") do if %%~nF leq ...
ここでは、N は12以下とした。13ヶ月以上の場合は、年と月に...
それぞれ引き算するとよいだろう。
/////////////////////////////////////////////////////////...
*日付ファイル名でのnヶ月保存(年月ディレクトリ管理) [#c703...
保存ログのファイル名は、logYYYYMMDD.txt のように年月日を...
%OLDLOG% の下に %YYYYMM% のディレクトリを作ってそこに保存...
Nヶ月経ったらディレクトリごと削除する。
set N=3
if not exist "%OLDLOG%\%YYYYMM%\*" md "%OLDLOG%\%YYYYMM"
move "%LOG%\log.txt" "%OLDLOG%\%YYYYMM%\log%YYYYMMDD%.txt"
set /a M=1%YYYYMM:~4,2%-100
if %M% gtr %N% (set /a OLD=YYYYMM-N) ELSE (set /a OLD=YY...
if exist "%OLDLOG%\%OLD%\*" rd /s /q "%OLDLOG%\%OLD%"
ここでは、N は12以下とした。13ヶ月以上の場合は、年と月に...
それぞれ引き算するとよいだろう。
/////////////////////////////////////////////////////////...
#navi(機能別)
ページ名: