98 lines
2.2 KiB
Batchfile
98 lines
2.2 KiB
Batchfile
@echo off
|
||
echo ========================================
|
||
echo Navisworks Transport Plugin 日志查看器
|
||
echo ========================================
|
||
echo.
|
||
|
||
set LOGFILE=%USERPROFILE%\Desktop\NavisworksTransport_Debug.log
|
||
|
||
if not exist "%LOGFILE%" (
|
||
echo 日志文件不存在: %LOGFILE%
|
||
echo 请先运行分层拆分功能生成日志
|
||
pause
|
||
exit /b
|
||
)
|
||
|
||
echo 日志文件位置: %LOGFILE%
|
||
echo 文件大小:
|
||
for %%A in ("%LOGFILE%") do echo %%~zA 字节
|
||
echo.
|
||
|
||
:MENU
|
||
echo 请选择操作:
|
||
echo 1. 查看最新50行日志
|
||
echo 2. 查看最新100行日志
|
||
echo 3. 查看所有ERROR日志
|
||
echo 4. 查看最新会话日志
|
||
echo 5. 实时监控日志(按Ctrl+C停止)
|
||
echo 6. 清空日志文件
|
||
echo 7. 退出
|
||
echo.
|
||
set /p choice=请输入选择 (1-7):
|
||
|
||
if "%choice%"=="1" goto TAIL50
|
||
if "%choice%"=="2" goto TAIL100
|
||
if "%choice%"=="3" goto ERRORS
|
||
if "%choice%"=="4" goto SESSION
|
||
if "%choice%"=="5" goto MONITOR
|
||
if "%choice%"=="6" goto CLEAR
|
||
if "%choice%"=="7" goto EXIT
|
||
|
||
echo 无效选择,请重新输入
|
||
goto MENU
|
||
|
||
:TAIL50
|
||
echo.
|
||
echo ========== 最新50行日志 ==========
|
||
powershell -Command "Get-Content '%LOGFILE%' -Tail 50"
|
||
echo.
|
||
pause
|
||
goto MENU
|
||
|
||
:TAIL100
|
||
echo.
|
||
echo ========== 最新100行日志 ==========
|
||
powershell -Command "Get-Content '%LOGFILE%' -Tail 100"
|
||
echo.
|
||
pause
|
||
goto MENU
|
||
|
||
:ERRORS
|
||
echo.
|
||
echo ========== 所有ERROR日志 ==========
|
||
findstr /i "ERROR" "%LOGFILE%"
|
||
echo.
|
||
pause
|
||
goto MENU
|
||
|
||
:SESSION
|
||
echo.
|
||
echo ========== 最新会话日志 ==========
|
||
powershell -Command "$content = Get-Content '%LOGFILE%'; $lastSession = ($content | Select-String 'SESSION.*新会话开始' | Select-Object -Last 1).LineNumber - 1; if($lastSession -ge 0) { $content[$lastSession..($content.Length-1)] } else { '没有找到会话标记' }"
|
||
echo.
|
||
pause
|
||
goto MENU
|
||
|
||
:MONITOR
|
||
echo.
|
||
echo ========== 实时监控日志 (按Ctrl+C停止) ==========
|
||
echo 正在监控日志文件变化...
|
||
powershell -Command "Get-Content '%LOGFILE%' -Wait -Tail 10"
|
||
goto MENU
|
||
|
||
:CLEAR
|
||
echo.
|
||
set /p confirm=确定要清空日志文件吗?(y/N):
|
||
if /i "%confirm%"=="y" (
|
||
echo. > "%LOGFILE%"
|
||
echo 日志文件已清空
|
||
) else (
|
||
echo 操作已取消
|
||
)
|
||
echo.
|
||
pause
|
||
goto MENU
|
||
|
||
:EXIT
|
||
echo 再见!
|
||
pause |