Windows Server 2003環境では、特定のディレクトリのテキストログファイルに書き込むバッチファイル(* .bat)があります。
このファイルが大きくなりすぎないようにするには、最初の1000行だけを保持するようにバッチファイルを変更する方法を知りたいと思います。
何卒よろしくお願い申し上げます。
Windows Server 2003環境では、特定のディレクトリのテキストログファイルに書き込むバッチファイル(* .bat)があります。
このファイルが大きくなりすぎないようにするには、最初の1000行だけを保持するようにバッチファイルを変更する方法を知りたいと思います。
何卒よろしくお願い申し上げます。
次のルーチンをいつでも呼び出して、ログファイルをトリミングし、最後の1000行のみを保持することができます。ファイルの名前は、最初で唯一のパラメーターとして渡されます。
:KeepLast1000
@echo off
setlocal
set keep=1000
if not exist "%~1" exit /b
set skip=0
for /f %%N in ('find /c /v "" ^<"%~1" 2^>nul') do if %%N gtr %keep% set /a skip=%%N-keep
more +%skip% "%~1" >"%~1.new"
move /y "%~1.new" "%~1" >nul