Ir al contenido principal

Tareas BATCH (o CMD) programadas en Windows 7 sin que aparezcan en el escritorio

Voy a explicar paso a paso como programar en Windows 7 una tarea BATCH (CMD), que se ejecute periódicamente, y cuando se ejecute que no se muestre en el escritorio, es decir, que se muestre en modo oculto o invisible, ajena al usuario que esté usando el escritorio en ese momento.

Lo primero es abrir el menú de Inicio de Windows -> Herramientas administrativas -> Programador de tareas.



Para tener nuestras tareas ordenadas y a la mano, deplegaremos la "Biblioteca del Programador de tareas", pulsaremos sobre dicho item con el botón derecho, seleccionamos "Nueva carpeta..." y escribimos algo, en este caso yo escribiré "JMTH".



Pinchamos sobre JMTH (en mi caso), y en la zona de la derecha pulsamos la opción "Crear tarea..."



Escribimos un nombre y descripción, y marcamos la opción "Ejecutar tanto si el usuario inició sesión como si no"; y en "Configurar para:" seleccionamos "WIndows 7..."



Nos vamos a la pestaña "Desencadenadores", y pulsamos el botón "Nuevo..."



En la pantalla "Nuevo desencadenador", marcamos:

  • Iniciar la tarea: "Según una programación"

  • "Una vez"

  • Repetir cada: "5 minutos"

  • Durante: "Indefinidamente"

  • Habilitado debe estar marcado




y pulsamos "Aceptar".



Nos vamos ahora a la pestaña "Acciones"



y pulsamos el botón "Nueva..."



Y la configuramos así:

  • Acción: "Iniciar un programa"

  • Pulsamos botón "Examinar..." y seleccionamos el fichero BATCH (CMD) que queremos ejecutar.




Y pulsamos "Aceptar"



Ahora nos vamos a la pestaña "Condiciones" (ya va quedando menos...)



Desmarcamos "Iniciar la tarea sólo si el equipo está conectado a la corriente alterna"



Y pulsamos "Aceptar"

Ahora nos preguntará nuestra password o contraseña de Windows



Una vez insertada y aceptada, ya habremos terminado:



Con lo que hemos creado una programación que cada 5 minutos ejecutará el fichero BATCH (CMD) que hemos especificado, y lo hará sin mostrarse en pantalla.

Como habréis podido observar hay muchos parámetros de configuración, por lo que podéis personalizarlo según vuestras necesidades; y debéis saber que los seleccionables donde se especifica el tiempo de ejecución, por ejemplo, a parte de las opciones que aparecen, podéis escribir lo que necesitéis (por ejemplo "1 minuto").

¡¡Espero que os haya servido de utilidad!!

Finalmente os comento que, como en todo, hay otra solución: En la pestaña "General", de las propiedades de nuestra tarea, seleccionar "Ejecutar sólo cuando el usuario haya iniciado sesión"



Y en la pestaña "Acciones", en vez de seleccionar el fichero BATCH (CMD), debéis seleccionar un nuevo fichero, con extensión .vbs (que deberéis crearos nuevo) con el siguiente contenido:
set objshell = createobject("wscript.shell")
objshell.run "c:_tmplynx_test.cmd",vbhide

Evidentemnte, especificando la ruta de vuestro fichero batch :)

¿Conocéis más formas de hacer lo mismo?

Comentarios

  1. muchas gracias por compartir.

    ResponderEliminar
  2. Hola, me fue sumamente útil el tutorial, muchas gracias por compartir, saludos.

    ResponderEliminar
  3. Muchas gracias por este tutorial tan util,gracias.

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Cosmic Supremacy : Juego 4X online, gratuito y multijugador basado en conquistas espaciales

  Llevaba bastante tiempo buscando un juego de estrategia en el espacio, multijugador , y que fuera por turnos . Un requisito que siempre tuve es que fuera fácil aprenderlo, y tuviera suficiente ayuda o tutoriales. Creo que lo he encontrado, se llama Cosmic Supremacy , y es gratis . Os dejo aquí información traducida desde su web oficial por si os animáis :) ¿Qué es Cosmic Supremacy? Cosmic Supremacy es un juego gratuito de estrategia espacial multijugador masivo basado en ticks/turnos con una interfaz 3D 'Galaxy View'. Compartes una galaxia con cientos de jugadores, cada uno con su propia civilización alienígena. Algunos de ellos pueden llegar a ser tus enemigos, otros podrían ser tus aliados. Necesitas explorar la galaxia que te rodea, descubrir nuevos sistemas solares, colonizar nuevos planetas y expandir tu imperio. Puedes diseñar todas las naves de tu flota e investigar nuevas tecnologías avanzadas para poder construir naves más rápidas y fuertes que te darán la ventaja ...

Hacer una pausa en un fichero por lotes batch (bat o cmd)

En consola de Windows (antiguamente Ms-Dos) desde siempre se ha podido hacer una pausa, esperando confirmación del usuario. El comando en cuestión es: pause Si escribimos pause en nuestra consola veremos que la consola se queda pausada hasta que pulsamos una tecla. Esto es útil en ficheros batch (ya sean .bat o .cmd) para hacer pausas controladas entre distintos comandos, a la espera que el usuario pulse alguna tecla para continua. Pero, ¿qué ocurre si queremos una pausa de cierto número de segundos y luego continúe el proceso automáticamente ? No hay ningún comando que lo haga, pero haciendo el siguiente "truco" (hace un ping a una URL especificando el número de segundos como timeout) lo podremos conseguir ping -n 10 localhost > null Simplemente cambiar el 10 por el número de segundos que queráis, y ya tendréis en consola (o msdos) una pausa de N segundos, y luego el proceso continuará automáticamente.  

Cómo colorear y añadir información de GIT a la consola (shell) de linux al conectarse remótamente por SSH

Si os pasa que tenéis vuestro terminal de Linux coloreado y veis información de GIT en el prompt , y al conectarse en remoto vía SSH al mismo servidor ya no lo veis, lo que necesitáis hacer es crear, o editar, el siguiente fichero en vuestro directorio home ~/.bash_profile , y añadir la siguiente información: [sourcecode] # set a fancy prompt (non-color, unless we know we "want" color) case "$TERM" in xterm-color) color_prompt=yes;; esac # uncomment for a colored prompt, if the terminal has the capability; turned # off by default to not distract the user: the focus in a terminal window # should be on the output of commands, not on the prompt force_color_prompt=yes if [ -n "$force_color_prompt" ]; then if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then # We have color support; assume it's compliant with Ecma-48 # (ISO/IEC-6429). (Lack of such support is extremely rare, and such # a case would te...