(03-31-2010, 08:06 AM)Alki Wrote: Bueno, al final lo he hecho de otra forma, ya que el vbs que me pusiste al ejecutarlo con cscript no me mostraba las tareas creadas con el asistente.
Seguramente se pueda mejorar bastante, pero al menos me funciona. Seria algo asi:
module_begin
module_name Backup_Status
module_type generic_data_string
module_exec dir "e:\ /tw" | grep "backup"
module_description Estado de la copia de seguridad
module_end
Me mostraria la fecha del ultimo backup, ya que el destino es el fichero backup. Lo que no se como hacer es para que se ponga en rojo si han pasado varios dias sin que la copia se actualize.
Buenas Alki, teniendo la misma necesidad que vosotros al monitorizar una tarea del programador de tareas de microsoft, he visto vuestros comentarios.
Os comento como he podido resolver, para mi necesidad, este problema.
Lo primero que he realizado es un script .bat donde consulto una tarea especifica.
Después, he creado un módulo donde ejecuto dicho script que me devuelve los valores que necesito.
Espero que aun os pueda servir de utilidad, aunque haya llegado tarde a este hilo.
Un saludo.
############################
@echo off
schtasks /v |grep "copias"|gawk "{print($10)}" > c:\resultado_copia.txt
rem $10 -- PUEDE SER VARIABLE, DEPENDIENDO DEL SISTEMA
rem copias -- ES EL NOMBRE DE LA TAREA
rem resultado_copia.txt -- USO EL FICHERO PARA REALIZARLE UN POST TRATAMIENTO A LOS RESULTADOS DEVUELTOS.
FOR /F "delims=·" %%A IN (c:\resultado_copia.txt) DO CALL:Tratar "%%A"
rem SI DEVUELVE 267009 ES QUE LA TAREA SE ENCUENTRA EN EJECUCION
IF %Reg%==267009 (
goto :EnProceso
)
rem SI DEVUELVE 0 ES QUE LA TAREA SE REALIZO CORRECTAMENTE
IF %Reg%==0 (
goto Correcto
)
rem SI DEVUELVE UN VALOS MAYOR QUE 0 ES QUE HA HABIDO ALGUN PROBLEMA.
IF %Reg% GTR 0 (
goto :Fallo
)
goto :exit
:EnProceso
echo En Proceso ...
del c:\resultado_copia.txt
goto :exit
:Fallo
echo Fallo... Revisar copia!
del c:\resultado_copia.txt
goto :exit
:Correcto
echo Correcto.
del c:\resultado_copia.txt
goto :exit
:Tratar
rem aquí se procesa cada línea del archivo
SET Reg=%~1
:exit