gpt4 book ai didi

batch-file - 使用 robocopy 截断日志

转载 作者:行者123 更新时间:2023-12-04 00:43:17 26 4
gpt4 key购买 nike

我正在运行一个 robocopy 进程,并生成如下日志:

robocopy "\\server1\reports" "c:\temp" /LOG+:"c:\scripts\logs\robolog-reports.txt"

日志文件创建正常。有什么方法可以限制日志文件的文件大小,最好是滚动日志以便只保存最新的 XX 行或 XX 字节?我想一次完成所有这些操作(robocopy),并进行最后几天的 robocopy 事件。

谢谢

最佳答案

从文件中获取最后 N 行的过程称为 tail。试试这个:

@echo off
setlocal

rem Update the robocopy report file
set "report=c:\scripts\logs\robolog-reports.txt"
robocopy "\\server1\reports" "c:\temp" /LOG+:"%report%"

rem Keep the last N lines in the report
set lines=300
for /F %%a in ('find /C /V "" ^< "%report%"') do set "lastLine=%%a"
if %lastLine% leq %lines% goto :EOF
set /A firstLine=lastLine-lines
more +%firstLine% "%report%" > tempFile.tmp
move /Y tempFile.tmp "%report%"

无法在一个 robocopy 操作中直接执行此操作。

关于batch-file - 使用 robocopy 截断日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30787403/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com