TUTORIAL PROGRAMACION BAT

Iniciado por soplo, 8 Septiembre 2003, 14:29 PM

0 Miembros y 1 Visitante están viendo este tema.

morenochico

Hola necesito saber el estado de un proceso o un servicio ya que en ocasiones se cuelgan y nos damos cuenta cuando es demasiado tarde (es un servidor) y cuando sucede, reiniciamos los servicios,matamos proceso, sacamos usuarios y demas cosas, ya logre hacer eso desde un .bat lo me ahorra mucho tiempo pero ahora lo que busco es una o mas de las siguientes cosas:
como saber si un programa esta colgado,
un servicio esta dando problemas,
la comunicacion entre aplicaciones esta truncada,
un puerto esta bloqueado,
leer el log del programa (escribe mas de 500 lineas) y detectar una linea de error (es de las ultimas pero no es fijo)

Ya que dependiendo de lo anterior puedo automatizar el proceso y no perder tiempo en ir hasta la pc y hacer los mismos pasos.

A lo mejor algunas cosas no me he dado a entender muy bien pero agradezco si tienen algunas ideas o aportaciones, la idea es monitorear un servicio ("engine") de una aplicacion en un servidor y evitar que deje de atender a clientes. Logico no puede estar una persona 24 hr monitorenado y quiero automatizar el proceso antes para que en encuanto haya problemas solucionarlo rapido.

S.M.L.O

Hola, soy nuevo en el foro, he estado echando un vistazo a tod y es cojonudo tanto el tutorial como las ayudas que se dan. Yo tengo una pregunta un poco ams general. Haber un .bat con el Batch file compiler digamos que se puede decompilar y leer el codigo y con este mismo programa podemos convertir un .bat a .exe pero el problema es, una vez convertido a .exe como se puede ver el codigo??

No se si m he explicado muy bien.

Gracias de antemano.

S.M.L.O

Hola tengo una pekeña preugntilla y no la he encontrado por el foro, haber estoy haciendo un programita para organizar una serie de cursos que me e bajao (contando el de aki jaja) bueno son unos 30 entonces os voy a poner un par para que veais lo k e exo y os comento:

@echo off
color 0f

:menu
echo.
echo.
echo Seleccione uno de los cursos y pulse ENTER:
echo.
echo 1  Comunicacion de datos               
echo 3  Hardware (Basico)
echo 4  Hardware (Completo)
echo 5  Electronica Basica
echo 6  Fundamentos Fisicos de la informatica
echo 7  Fundamentos Fisicos de la informatica (Ejercicios)

set /p tecla=
if tecla==1 goto comunicacion
if tecla==2  goto subredes
if tecla==3  goto hardware1
if tecla==4  goto hardware2
if tecla==5  goto electronica
if tecla==6  goto fisicos1
if tecla==7  goto fisicos2

:comunicacion
start C:\cursos\ComunicaciondeDatos.pdf
goto menu

:subredes
start C:\cursos\subredes.pdf
goto menu

:hardware1
start C:\cursos\Cursobasicoconocimientoshardware.pdf
goto menu

:hardware2
start C:\cursos\hardwarecompleto.pdf
goto menu

:electronica
start C:\cursos\electronicabasica.pdf
goto menu

:fisicos1
start C:\cursos\Fundamentosfisicosdelainformatica.pdf
goto menu

:fisicos2
start C:\cursos\Fundamentosfisicosdelainformaticaejercicios.pdf
goto menu


Es muy simple (pero estoy empezando) el problema es que no me habre el que quiero solo habre el 1 de la lista y ya nose que hacer. otro detalle es si admite numeros de 2 digitos si vdd??

PD: Me presento que no lo he hecho antes, me llamo Samuel , tengo 17 años nunca he hecho batch he hecho solo bastante javascript y HTML  y soy Español, encantado y que siga asi el foro que esta cojonudo

Thanks!

j.r

wenas, acabo de conocer este maravillo foro, y tengo una duda.

Estoy creando un .bat; pra q se inicie cn el sistema. Necesito q se ejecute un programa y acepte la ventanita q crea este. EL paso q me falta es "aceptar" en la ventanita q sale. El bat lo tengo ahora mismo asin:

@echo off
cd..
cd..
cd..
cd c:
start "programa".exe +h


Q faltaria.... 
Gracias y un saludo

Siuto

S.M.L.O el error tuyo es que estabas comparando la palabra tecla no la variable tecla.
Las lineas que tenes que corregir son las que cite a continuacion...

if %tecla%==1 goto comunicacion
if %tecla%==2  goto subredes
if %tecla%==3  goto hardware1
if %tecla%==4  goto hardware2
if %tecla%==5  goto electronica
if %tecla%==6  goto fisicos1
if %tecla%==7  goto fisicos2

Siuto

Cita de: j.r en  9 Agosto 2007, 15:48 PM
wenas, acabo de conocer este maravillo foro, y tengo una duda.

Estoy creando un .bat; pra q se inicie cn el sistema. Necesito q se ejecute un programa y acepte la ventanita q crea este. EL paso q me falta es "aceptar" en la ventanita q sale.

Desde un archivo.bat no vas a poder hacer eso.

cd..
cd..
cd..


Para llegar hasta el directorio raiz en vez de hacer eso podes usar CD\

SirDrake

Un saludo a todos

Me he encontrado este post y me ha parecido interesante, pero tengo un problema con un bat que todavía no he conseguido resolver.
1º Siuto, ¿Porqué dices que no se puede usar cd..?Yo lo uso en algún bat y no hay problemas, aunque tienes que tener muy claro donde estás y donde vas.
2º Tengo que hacer un bat que llama a otro bat con parámetros, el problema es que si lo llamo tal cual lo haría en msdos el bat al que llamo se ejecuta bien pero finaliza el mio y no se ejecuta ninguna instrucción posterior, y si pongo echo y llamo al bat no hace nada pero se ejecutan las instrucciones posteriores.
Al principio del post habla algo de esto pero no lo he podido solucionar

Alguna ayuda?
Gracias

Siuto

1. Pero como la mayoria de las veces no tenes muy claro donde estas y si estas seguro que vas a la raiz del HD es conveniente usar CD\ para evitar un problema.


2. Desde el archivo que se esta ejecutando llama al 2do bat de la siguiente foma:

start 2doArchivo.bat parametro1 parametro2 .... parametroN


j.r

CitarDesde un archivo.bat no vas a poder hacer eso.

y cual podria ser una solucion posible??


Asias por todo

Undertaker092

Una pregunta.Cuando coloco este codigo no funciona... por que¿?

@Echo off
cd C:\documents and settings\usuario\escritorio
md carpeta 1
md carpeta 2
cd C:\documents and settings\usuario\escritorio\carpeta 1
copy con: lala.bat
msg * ola
^Z
exit


quiero crear esas carpetas en el escritorio i luego añadirle a la carpeta 1 el archivo lala.bat...pero ^Z tmp funciona...que ago¿?¿?  ;D ;D :huh: