¿Puedo ejecutar un archivo por lotes ventanas sin un símbolo del sistema visibles?

Los archivos por lotes son una forma práctica para ejecutar una serie de comandos en Windows, pero hay alguna forma de ejecutarlos de forma invisible en segundo plano? Leer en averiguar cómo hacerlo.

Pregunta y respuesta sesión de hoy nos llega por cortesía de superusuario, una subdivisión de Stack Exchange, una agrupación impulsado por la comunidad de Q & A sitios web.

lector de superusuario Jake quiere ejecutar un archivo BAT invisible, escribe

He instalado un rubí joya llamada Redcar, que se inicia desde la línea de comandos. Cuando se ejecuta, se le quita la cáscara hasta que termina, así que tengo que crear una nueva ventana de shell para continuar haciendo el trabajo de línea de comandos. La cáscara que estoy usando es la cáscara de GITBash MySysGit.

He encontrado un archivo Redcar.bat que está destinado a lanzar Redcar como un acceso directo, supongo, pero no quiero que la ventana de comandos extra para abrir cada vez que inicie el archivo BAT.

¿Cómo me basta con ejecutar la MTD sin ver el símbolo?

¿Hay una solución para sigiloso deseo símbolo de Jake?

Superusuario colaborador Afrazier responde con una combinación de malas y buenas noticias

No se puede – la ejecución de un archivo por lotes con el construido en el símbolo del sistema que se va a mantener una ventana abierta hasta las salidas de archivos por lotes.

Lo que puede hacer es tomar medidas para asegurarse de que el archivo por lotes sale tan rápido como sea posible. Si es posible, modificar el archivo por lotes para ejecutar cualquier programa con el comando de arranque. De forma predeterminada, arrancador vuelve inmediatamente sin esperar a que el programa termine, por lo que el archivo por lotes seguirá funcionando y, presumiblemente, la salida inmediatamente. Pareja que con la modificación de su acceso directo para ejecutar el archivo por lotes se minimiza, y sólo va a ver el destello barra de tareas sin ni siquiera ver una pantalla de ventana.

Una advertencia a esto es que si se está ejecutando un programa en modo consola, que son muchos los intérpretes de script, el archivo por lotes esperará a que el programa termine, y el uso de inicio generará una nueva ventana de la consola. Lo que hay que hacer en este caso se ejecuta la versión basada en Windows del intérprete en lugar de uno basado en la consola – no comenzar necesario. Para Perl, ejecutaría wperl.exe en lugar de perl.exe. Para Python, se pythonw.exe en lugar de python.exe. El viejo Win32 distribución de Ruby he descargado tiene rubyw.exe, lo que debería hacer lo mismo.

Una última posibilidad es utilizar una herramienta de 3 ª parte para ejecutar el símbolo del sistema con una ventana oculta. He oído hablar de tales cosas, pero nunca tuvo un uso para ellos, así que no sé de nada en especial al punto que lo haga.

Los lectores también le apuntaron a otro hilo superusuario que pone de relieve cómo se puede utilizar un script de Visual Basic para ir más allá de minimizar la visibilidad y de plano ocultar el símbolo del CMD. En ese hilo, Harry MC explica

Solución 1

Guardar esta una línea de texto como archivos invisible.vbs

CreateObject ( “Wscript.Shell”). Ejecutar “” “” & WScript.Arguments (0) & “” “”, 0, Falso

Para ejecutar cualquier programa o archivo por lotes de forma invisible, utilizar de esta manera

wscript.exe “C: \ \ Dondequiera invisible.vbs”, “C: \ algún otro lugar \ MyBatchFile.bat”

Para también poder pasar-on / retransmitir una lista de argumentos utilizar sólo dos comillas dobles

CreateObject ( “Wscript.Shell”). Ejecutar “” & WScript.Arguments (0) & “”, 0, Falso

por ejemplo: Invisible.vbs “Kill.vbs ME.exe”

Solución 2

Utilice una herramienta de línea de comandos para iniciar un proceso en silencio: De la tranquilidad.

El empleo de cualquiera de las soluciones anteriores, en base a su nivel de comodidad utilizando VBS y herramientas de terceros o no, será, como mínimo, reducir la visibilidad de la ventana de CMD o directamente eliminarlo.

Si tiene algo que añadir a la explicación? En off en los comentarios. ¿Quieres leer más respuestas de otros usuarios Stack Exchange conocedores de la tecnología? Echa un vistazo a la rosca discusión completa aquí.

En lugar de una herramienta unitasking gusta la tranquilidad, por qué no utilizar uno que puede servir a este propósito y mucho más, NirCmd; http:? //www.nirsoft.net/utils/nircmd.html

Uso; NirCmd ejecutivo de ocultar c: \ donde \ MyBatchFile.bat

Soy un fan de su sitio, pero tengo que admitir que no estoy seguro de por qué usted incluyó la respuesta de Afrazier porque estaba totalmente equivocado, como se muestra por Harry MC.

El Internet está lleno de falsedades ya. No puedo evitar pensar que añadiendo a la misma reenviando una respuesta incorrecta a una pregunta (cuando podría tener acaba de publicar la respuesta correcta) realmente no ayuda cosas.

¿Cómo sobre el uso del Programador de tareas con la opción “Ejecutar si el usuario está conectado o no” opción activada? Esto funciona para mí.

Un programa llamado CMDOW puede ocultar la ventana de comandos. Una palabra de advertencia, debido a que es posible abuso, el archivo podría ser marcado como una herramienta de hacking por lo que tendrá que poner en lista blanca del AV; http:. //www.commandline.co.uk/cmdow/

El bate a EXE compilador que utilizo ofrece la opción de la aplicación invisible. http://www.f2ko.de/programs.php?lang=en&pid=b2e

Me gusta compilar mis archivos por lotes en un exe porque básicamente bloques que alguien robe mi código si no quiero que lo hagan. La opción de aplicación invisible funciona bastante bien. 🙂

“De todos modos” no es lo mismo que “de ninguna manera”.

Puede ejecutar otro archivo por lotes con START / / C mybatchfile.bat MIN cmd.exe desde el interior de la línea de comandos.

Desde fuera traerá la ventana de la consola cmd pero para evitar eso, se puede crear un archivo de acceso directo con propiedades modificadas para comenzar a reducirse al mínimo.

También puede utilizar el lenguaje de script AutoIt. La orden interna de ejecución puede ejecutar el archivo de murciélago y ocultar la ventana de cmd. Ver http://www.autoitscript.com/autoit3/docs/functions/Run.htm para más detalles. Utilice el parámetro establecido en show_flag @SW_HIDE.

Si realmente quiere ver nada en la pantalla en absoluto, ni siquiera un breve destello, se debe utilizar la pequeña utilidad gratuita NirCmd por Nirsoft (una búsqueda en Google para poder llegar a la descarga de inmediato) .; NirCmd tiene muchas opciones de parámetro útil para ejecutar cosas, tales como; NirCmd ocultar ejecutivo. “c: \ temp \ test.exe” va a ejecutar cualquier exe (prueba, en este ejemplo) sin mostrar nada; Especialmente útil aquí es éste; NirCmd execmd “c: \ temp \ my.bat “va a ejecutar cualquier cosita símbolo del sistema (my.bat, en este ejemplo) sin mostrar ninguna ventana de la consola en absoluto.

Afrazier es totalmente equivocado. He estado usando la solución VBS para mapear en silencio unidades de red en el arranque y funciona sin problema.

Las soluciones comerciales también están disponibles – buscar “Hidden Start”. Mi favorito personal es NirCmd – una joya!

He intentado lo que sugiere Vhanla, he creado un archivo de acceso directo (.lnk) para el archivo de my.bat y modificadas sus propiedades (Alt-Intro) me puse a minimizada y se ejecuta oculto. No hay necesidad de herramientas de terceros.

Actores y modelos entienden el poder de un disparo de cabeza y ahora también lo hacen los perros; en 2009 el fotógrafo LaNola Piedra tomó fotos al estilo de la moda grabación de más edad y daba a los perros en una perrera de la ciudad de Nueva York y donó las fotos para el refugio. Todos los perros con un nuevo disparo en la cabeza se adoptaron rápidamente.