1

在 Windows Server 2003 环境中,我们有一个批处理文件 (*.bat),它写入特定目录中的文本日志文件。

为了防止这个文件变得太大,我想知道如何修改批处理文件以便只保留前 1000 个最近的行。

预先感谢您的友好合作。

4

1 回答 1

3

您可以随时调用以下例程来修剪您的日志文件,只保留最后 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
于 2012-08-03T18:19:23.363 回答