10 maneras de ejecutar archivos por lotes de forma silenciosa y ocultar la ventana de la consola

2020-01-24 07:19:14
Principal·Software·10 maneras de ejecutar archivos por lotes de forma silenciosa y ocultar la ventana de la consola

La mayoría de los usuarios normales de Windows nunca usan el símbolo del sistema y no tienen idea de qué tipo de cosas puede hacer desde la línea de comandos. Los usuarios más experimentados sabrán que ejecutar comandos de línea de comandos puede ser muy útil para una variedad de tareas y agrupar todo en un solo archivo por lotes para procesarlo todo junto puede ser muy poderoso.

Un inconveniente con la ejecución de archivos por lotes es que siempre abren una ventana de consola que muestra la salida de los comandos que se ejecutan. Esto puede ser importante si desea interactuar o ver lo que sucede mientras se ejecuta el archivo por lotes, pero un poco molesto si desea ejecutar el script por lotes de forma silenciosa en segundo plano o al iniciar Windows.

Para archivos por lotes cortos, la ventana de la consola puede aparecer y desaparecer en un instante o permanecer abierta durante más tiempo si se ejecutan más comandos. No hay una forma estándar incorporada para ocultar completamente la ventana de la consola para que no se muestre, por lo que si desea hacerlo, se requiere otra solución. Aquí le mostramos algunas formas diferentes de hacer que su script por lotes se ejecute en silencio sin que se muestre una ventana de consola.

Nota: Cuando use un método para ocultar la ventana de la consola, asegúrese de que el script por lotes no contenga comandos que puedan detener el script antes de que salga, como pausar o requerir la entrada del usuario como una respuesta Sí / No. Por ejemplo, si un script se ha convertido en un ejecutable y requiere interacción, no podrá hacer nada y el proceso permanecerá en el Administrador de tareas hasta que se elimine manualmente.

Ejecute un script de lote silencioso con una utilidad de terceros

Una solución simple y común para ejecutar un archivo por lotes de forma silenciosa es iniciarlo a través de una utilidad de terceros que suprime la ventana de la consola.

Inicio oculto (HStart)

Hidden Start es una herramienta portátil y bastante poderosa que puede ejecutar ejecutables y scripts con varias opciones útiles. Estamos utilizando la versión 4.2 de 2013 porque es portátil y no está tan restringida como las versiones más recientes. Desde la versión 4.3, Hidden Start ya no es portátil y también aparece una queja cada vez que intentas ejecutar una consola oculta, lo que la hace inútil para este propósito.

Descomprima y ejecute el programa con HStartUI.exe, el proceso consta de tres pasos. Agregue o suelte manualmente su archivo por lotes en la ventana, asegúrese de que " Ocultar ventana de consola " esté marcado y, opcionalmente, marque "Ejecutar con los privilegios más altos" si su script lo requiere. Otras opciones de configuración como prioridad o directorio de inicio no son esenciales a menos que sepa que el script las requiere.

El paso 3 muestra el comando de salida que debe ejecutarse manualmente. Puede usar los botones en la parte inferior para copiar el comando, crear automáticamente un acceso directo o agregar una entrada de inicio automático en el registro. Tenga en cuenta que la opción de omisión de solicitud de UAC no está disponible en la versión gratuita (le mostraremos cómo hacerlo de forma gratuita más adelante).

Descargar Hidden Start


SilentCMD

Esta es una pequeña herramienta de 14 KB que no está bendecida con toneladas de características, pero hace la tarea simple que estamos buscando. Si está en Windows 10, .NET Framework 3.5 se ofrecerá para la instalación cuando ejecute la herramienta si aún no está en su sistema. La sintaxis básica para usar en accesos directos o similares es bastante simple.

SilentCMD [ruta al archivo .bat] [argumentos por lotes] [opciones]

Hay dos opciones adicionales en SilentCMD. Una es habilitar el registro con "/ log: [ruta a .txt]" y la otra es iniciar el script después de un retraso usando "/ DELAY: [xx segundos]". Agregue la opción al final del comando. Siempre que no necesite funciones adicionales como elevación o un directorio de inicio diferente, SilentCMD funciona bien y puede ser todo lo que necesita.

Descargar SilentCMD


NirCMD

NirCMD de Nirsoft es una pequeña herramienta multifunción que puede realizar silenciosamente docenas de tareas sin abrir ninguna ventana de consola. Estos incluyen expulsar unidades de ROM, cambiar volúmenes de audio, habilitar protectores de pantalla, controlar procesos / servicios y mucho más. El siguiente comando se puede usar en el arranque o en un acceso directo para ejecutar un archivo por lotes de forma silenciosa:

nircmd exec hide [ruta al archivo .bat]

Los comandos exec y hide se usan para ejecutar el script y ocultar cualquier ventana de consola para que no se abra.

Incluya elevatecmd para solicitar privilegios de administrador para el archivo por lotes, aunque solo es necesario si sabe que los comandos en su script requieren elevación.

nircmd elevatecmd exec hide [ruta al archivo .bat]

Se puede crear un acceso directo de escritorio manualmente o puede indicarle a NirCMD que cree un acceso directo desde la línea de comandos con los comandos incluidos para que el script silencioso esté listo para ejecutarse.

nircmd cmdshortcut "~ $ folder.desktop $" "SilentBatch" exec hide C: \ Users \ Raymondcc \ MyBatchFile.bat

Lo anterior creará un acceso directo de escritorio llamado SilentBatch que ejecutará silenciosamente el script MyBatchFile.bat. Tenga en cuenta que es posible que tenga que cambiar la ubicación "Iniciar en" en el acceso directo, ya que la salida del script que no proporciona una ruta de acceso predeterminada será C: \ Windows.

Al hacer doble clic en el ejecutable de NirCMD, ofrecerá la opción de copiarse en el directorio de Windows, por lo que solo tiene que usar nircmd.exe y no proporcionar una ruta completa cada vez. Es aconsejable hacerlo si planea utilizar NirCMD en su computadora (asegúrese de hacer clic derecho y ejecutar nircmd.exe como administrador).

Para obtener información completa sobre la gran cantidad de comandos disponibles, lea el archivo completo de Ayuda de NirCMD.

Descargar NirCMD


Lanzador de lotes silencioso Raymond.cc

También tenemos una pequeña herramienta que puede iniciar un archivo por lotes de forma silenciosa. Se creó en Autoit y es esencialmente una versión ligeramente avanzada del método "Cree su propio archivo ejecutable" en la página dos. Silent Batch Launcher está diseñado para ser simple de usar y proporcionar una opción ligeramente diferente a las otras herramientas aquí.

Ejecute el ejecutable y se le pedirá que busque un archivo por lotes. Luego se creará un archivo INI que contiene la ruta al script junto al ejecutable. Cada vez que ejecute Silent Batch Launcher a partir de ese momento, ejecutará el mismo archivo por lotes siempre que el archivo INI esté presente.

Para ejecutar una secuencia de comandos diferente, elimine el archivo INI o mantenga presionada la tecla Mayús mientras inicia la herramienta y aparecerá el solicitante del archivo. El nombre del archivo INI coincidirá con el nombre del archivo EXE para que pueda tener apariciones con nombres diferentes de la herramienta en la misma carpeta. Hay dos archivos en el archivo, use la versión "Admin" si el script requiere elevación. Cualquier comentario útil que tenga sobre la herramienta es bienvenido.

Descargar Silent Batch Launcher

Nota: Debido a que esta herramienta se creó con Autoit, crea algunos falsos positivos con escáneres de virus en línea como VirusTotal.

Hay algunas otras herramientas que pueden ocultar la ventana de la consola de un script por lotes que no hemos mencionado aquí. Incluyen Cmdow, Crear proceso oculto, Hidecon y Hideexec.

Ocultar la consola por lotes con un script de Visual Basic

Ocultar la ventana de la consola de script por lotes usando Visual Basic es bastante similar a usar un comando externo y funciona básicamente de la misma manera. Inicie el script VB y proporcione el archivo por lotes como argumento, luego el código ejecuta el script sin mostrar ningún resultado. Se puede hacer con una sola línea de código.

CreateObject (“Wscript.Shell”). Ejecute “” ”” & WScript.Arguments (0) & “” ””, 0, False

Cree un archivo de texto vacío, copie y pegue la línea anterior y guárdelo como un archivo .vbs. Alternativamente, descargue launchquiet.vbs, que es un script preparado. Para agregarlo a un acceso directo o una ubicación de inicio, etc., use los comandos de la siguiente manera. No olvides usar comillas si tus rutas o nombres de archivo contienen espacios.

Wscript [ruta al archivo .vbs] [ruta al archivo .bat]

Si desea proporcionar un argumento para el archivo por lotes, la parte del script VB tiene que modificarse ligeramente cambiando los dos conjuntos de cuatro comillas dobles a dos conjuntos de dos.

CreateObject (“Wscript.Shell”). Ejecute “” & WScript.Arguments (0) & “”, 0, False

Luego proporcione los argumentos junto con la ruta del script por lotes entre comillas:

Wscript [ruta al archivo .vbs] "[ruta al archivo .bat] [argumento]"

Nuevamente, para su comodidad, puede descargar un archivo de script launchquiet_args.vbs listo.

En la página siguiente, veremos cómo convertir un script por lotes en un archivo ejecutable, cómo crear un ejecutable por lotes sin ningún software adicional y cómo ejecutar un script desde una tarea programada.

1 2Siguiente › Ver todo
La Elección Del Editor