@echo off
setlocal enabledelayedexpansion
:menu
rem Estas son las rutas donde se encuentras los archivos log
set ruta1=/usr01/home/val/EXTERNO_2009/bin/
set ruta2=/APP/home/prod/EXTERNO_2010/bin/
echo.
echo.
rem Generación de menú en batch
echo LOG de TRABAJOS
echo.
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º # 1 Proceso 2009 º
echo º # 2 Proceso 2010 º
echo º º
echo º # 6 Salir de la aplicacion º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
set /p num=Escribe un numero[1,2,3,4,5]:
if not defined num goto menu
if %num%==1 goto m2009
if %num%==2 goto m2010
if %num%==6 exit
goto menu
:m2009
echo.
set c=0
rem Ejecuto el comando remoto y almaceno el resultado en un array
FOR /F "usebackq" %%a in (`plink.exe -ssh -pw password usuario@servidor ls -1 %ruta1%*.log`) do (
set /a c+=1
call set unico!c!=%%a
)
set i-unico=!c!
echo Archivo LOG encontrados
echo.
rem Muestro los resultados almacenados en el array - todos los archivos .log encontrados
for /l %%n in (1,1,!c!) do (echo %%n - !unico%%n!)
:m2009ve
echo.
rem solicito el numero del log que se desea monitorear
set /p num=Archivo a procesar con TAIL [1 - %i-unico%]:
set /a x=%num%*1
echo.
if "%x%"=="%num%" (echo %num% - !unico%num%!) else (goto m2009ve)
echo.
echo Mostrando Archivo LOG solicitado
echo.
rem Aquí se muestra el avance del archivo log que se esta monitoreando
plink.exe -ssh -pw password usuario@servidor tail -f !unico%num%!
pause
goto m2009
rem Mismo proceso anterior para otro periodo - la lógica es idéntica al caso anterior
:m2010
echo.
set c=0
FOR /F "usebackq" %%a in (`plink.exe -ssh -pw password usuario@servidor ls -1 %ruta2%*.log`) do (
set /a c+=1
call set unico!c!=%%a
)
set i-unico=!c!
echo Archivo LOG encontrados
echo.
for /l %%n in (1,1,!c!) do (echo %%n - !unico%%n!)
:m2010ve
echo.
set /p num=Archivo a procesar con TAIL [1 - %i-unico%]:
set /a x=%num%*1
echo.
if "%x%"=="%num%" (echo %num% - !unico%num%!) else (goto m2010ve)
echo.
echo Mostrando Archivo LOG solicitado
echo.
plink.exe -ssh -pw password usuario@servidor tail -f !unico%num%!
pause
goto m2010