Un archivo por lotes es un archivo de texto que contiene una serie de comandos que puede ejecutar el intérprete de línea de comandos, como cmd.exe. Los archivos por lotes son útiles para automatizar tareas, como iniciar aplicaciones, cambiar la configuración o realizar operaciones en archivos. Por ejemplo, puede crear un archivo por lotes que copia una carpeta a otra ubicación, elimina algunos archivos temporales y abre una página web.
En este artículo, te mostraré cómo crear un archivo por lotes simple que imprima un mensaje en la pantalla y cómo ejecutarlo usando diferentes métodos. También proporcionaré algunos ejemplos de archivos por lotes más avanzados que pueden realizar varias acciones.
Para crear un archivo por lotes básico en Windows 10, necesita un editor de texto y algunos conocimientos básicos de escribir comandos en el símbolo del sistema. Puede usar el Bloc de notas o cualquier otro editor de texto de su elección.
Abra el Bloc de notas y escriba las siguientes líneas en el archivo de texto:
@ECHO OFF ECHO Hola mundo! Su primer archivo de lote se imprimió en la pantalla con éxito. PAUSA El script anterior muestra la frase, "Hola Mundo! Su primer archivo de lote se imprimió en la pantalla con éxito", en la pantalla.
@ECHO OFF - Muestra el mensaje en una línea limpia deshabilitando el indicador de visualización. Por lo general, esta línea va al principio del archivo. (Puede usar el comando sin el símbolo "@", pero se recomienda incluirlo para mostrar un retorno más limpio.) ECHO - El comando imprime el texto después del espacio en la pantalla. PAUSE - Permite que la ventana permanezca abierta después de que el comando haya sido ejecutado. De lo contrario, la ventana se cerrará automáticamente tan pronto como el script termine de ejecutarse. Puede usar este comando al final del script o después de un comando específico al ejecutar varias tareas y querer hacer una pausa entre cada línea. Nota: Mientras que los archivos por lotes suelen usar las extensiones de archivo . bat, también puede encontrarlos usando las extensiones de archivo . cmd o . btm.
Hay varias formas de ejecutar un archivo por lotes en Windows 10. Estas son algunas de ellas:
La forma más fácil de ejecutar un archivo por lotes es haciendo doble clic en el Explorador de archivos. Esto abrirá una ventana del símbolo del sistema y ejecutará los comandos en secuencia.
También puede ejecutar un archivo por lotes desde el símbolo del sistema escribiendo su nombre o ruta y presionando Enter. Por ejemplo:
<C: Usuarios usuario Documentos first_basic_batch.bat
Si el archivo por lotes no está en el directorio actual, debe especificar la ruta completa o relativa. Por ejemplo:
C: User user Documents> C: Users user Desktop first_basic_batch.bat or
C: Usuarios usuario Documentos> .. Escritorio first_basic_batch.bat
También puede usar el comando cd para cambiar el directorio actual al que se encuentra el archivo por lotes y luego ejecutarlo. Por ejemplo:
C: Users user Documents> cd C: Users user Desktop C: Users user Desktop> first_basic_batch.bat Si desea copiar el archivo por lotes a otra carpeta y ejecutarlo desde allí, puede usar el comando xcopy. Por ejemplo:
C: Users user Documents> xcopy first_basic_batch.bat C: Temp /Y C: Users user Documents> cd C: Temp C: Temp> first_basic_batch.bat El interruptor /Y suprime el mensaje de confirmación al sobrescribir un archivo existente.
También puede ejecutar un archivo por lotes desde el Explorador de archivos haciendo clic derecho en él y seleccionando Ejecutar como administrador desde el menú contextual. Esto ejecutará el archivo por lotes con privilegios elevados, que pueden ser necesarios para algunos comandos o acciones.
La tarea se ejecutará de acuerdo con su horario y ejecutará el archivo por lotes.
El archivo por lotes básico que creamos anteriormente solo imprime un mensaje en la pantalla. Sin embargo, puede crear archivos por lotes más avanzados que pueden realizar varias acciones, como descargar archivos, consultar información del sistema o cambiar atributos. Aquí hay algunos ejemplos de estos archivos por lotes:
Puede utilizar el comando bitsadmin para descargar archivos desde Internet utilizando un archivo por lotes. Por ejemplo, este script descarga una imagen de un sitio web y la guarda en la carpeta actual:
@ECHO OFF bitsadmin /transfer mydownloadjob /priority high https://www.example.com/image.jpg %cd% image.jpg ECHO Descargar completado. PAUSA bitsadmin - La herramienta de línea de comandos que crea y monitorea trabajos BITS. /transfer - El interruptor que crea un trabajo de transferencia con un archivo. mydownloadjob - El nombre del trabajo. /priority high - El interruptor que establece la prioridad del trabajo en alto. https://www.example.com/image.jpg - La URL del archivo a descargar. %cd% image.jpg - La ruta de destino del archivo. La variable %cd% representa el directorio actual. Puede usar el comando systeminfo para mostrar información detallada sobre la configuración del sistema, como la versión del sistema operativo, hardware, configuración de red, etc. Por ejemplo, este script muestra información básica del sistema y la guarda en un archivo de texto:
@ECHO OFF systeminfo findstr /c:"OS Name" /c:"OS Version" /c:"System Manufacturer" /c:"System Model" /c:"System Type" /c:"Total Physical Memory" > systeminfo.txt ECHO System information saved in systeminfo.txt. PAUSA systeminfo - El comando que muestra información del sistema. findstr - El comando que busca cadenas en archivos o entradas. /c:"string" - El interruptor que especifica la cadena a buscar. Puede usar varios conmutadores /c para buscar varias cadenas. > - El operador de redirección que envía la salida del comando a un archivo. Puede usar el comando attrib para cambiar los atributos de archivos y carpetas, como solo lectura, oculto, sistema, etc. Por ejemplo, este script elimina el atributo de solo lectura de todos los archivos de la carpeta actual y sus subcarpetas:
@ECHO OFF attrib -r *.* /s ECHO Atributo de solo lectura eliminado de todos los archivos. PAUSA attrib - El comando que muestra o cambia los atributos del archivo. -r - El interruptor que borra el atributo de solo lectura. *. * - El comodín que coincide con todos los archivos. /s - El interruptor que aplica el comando a todos los archivos de la carpeta actual y sus subcarpetas. Si desea obtener más información sobre los archivos por lotes y cómo usarlos, puede consultar estos recursos:
. bat y . cmd son ambos tipos de archivos por lotes que contienen comandos para el intérprete de línea de comandos. Sin embargo, tienen algunas diferencias en cómo se procesan y se ejecutan. . Los archivos bat son compatibles con versiones anteriores de Windows, como DOS y Windows 9x. . Los archivos cmd son compatibles con las versiones más recientes de Windows, como Windows NT y Windows 10. . Los archivos cmd también tienen algunas características y limitaciones adicionales en comparación con los archivos . bat. Por ejemplo, . Los archivos cmd soportan el uso de nombres de archivo largos y caracteres Unicode, pero no soportan el comando GOTO :EOF.
Puede comentar una línea en un archivo por lotes usando el comando REM o el símbolo de dos puntos (::) al principio de la línea. Por ejemplo:
@ECHO OFF REM Este es un comentario :: Este es otro comentario ECHO Esto no es un comentario PAUSE El comando REM es sinónimo de comentario y se utiliza para agregar comentarios o explicaciones a un archivo por lotes. El símbolo de dos puntos es una forma alternativa de comentar una línea que es más rápida y eficiente que el comando REM.
Puede pasar argumentos a un archivo por lotes escribiéndolos después del nombre o la ruta del archivo cuando se ejecuta desde el símbolo del sistema o el Explorador de archivos. Por ejemplo: resultado/p>
C: User user Documents> first_basic_batch.bat argument1 argument3 Puede acceder a los argumentos dentro del archivo por lotes utilizando las variables %n, donde n es un número de 0 a 9. Por ejemplo:
La variable %0 representa el nombre del archivo por lotes. La variable %1 representa el primer argumento, la variable %2 representa el segundo argumento, y así sucesivamente.
Puede crear un bucle en un archivo por lotes utilizando los comandos FOR, IF o GOTO. Por ejemplo, este script crea un bucle que cuenta de 1 a 10 y muestra los números en la pantalla:
@ECHO OFF SET /A count=1 :loop ECHO %count% SET /A count=count+1 IF %count% LEQ 10 GOTO loop ECHO Loop completado. PAUSE SET /A - El comando que asigna un valor numérico a una variable. :loop - La etiqueta que marca el comienzo del bucle. IF - El comando que realiza una prueba condicional. LEQ - El operador que compara dos valores por menos o igual a. GOTO - El comando que transfiere el control a otra parte del script. Puede crear un menú en un archivo por lotes utilizando el comando CHOICE y el comando IF ERRORLEVEL. Por ejemplo, este script crea un menú que permite al usuario seleccionar una de cuatro opciones y realiza una acción diferente para cada opción:
@ECHO OFF :menu CLS ECHO Elija una opción: ECHO 1) Diga hola ECHO 2) Diga adiós ECHO 3) No diga nada ECHO 4) Exit CHOICE /C 1234 /N /M "Introduzca su elección: " IF ERRORLEVEL 4 GOTO end IF ERRORLEVEL 3 GOTO NOTHING IF ERRORLEVEL 2 GOTO GOODBYE IF EVEL :hola ECHO Hola! PAUSE GOTO menú :goodbye ECHO Goodbye! PAUSE GOTO menú :nothing ECHO ... PAUSE GOTO menú :end ECHO salir... EXIT CLS - El comando que borra la pantalla. CHOICE - El comando que solicita al usuario seleccionar una de las opciones de un conjunto de claves especificadas. /N - El interruptor que oculta la lista de opciones en el prompt. /M "Introduzca su elección: " - El interruptor que muestra un mensaje personalizado en el prompt. IF ERRORLEVEL n - El comando que comprueba el código de salida del comando anterior. El comando CHOICE devuelve un código de salida igual al índice de la tecla pulsada por el usuario. Por ejemplo, si el usuario presiona 1, el código de salida es 1. Si el usuario presiona 4, el código de salida es 4.