NorfiPC
NorfiPC » Modificar Windows » Crear archivos batch

Crear archivos bat y batch útiles en Windows, ejemplos

Tutorial y manual de creación y edición de scripts en Windows usando CMD. Comandos para crear bat y batch ejecutables con un archivo de texto. Guía paso por paso, ejemplos prácticos, reglas y trucos.
Tutorial para crear archivos batch en Windows


Sencillo manual en el que se explica de forma detallada los principios elementales, para crear las aplicaciones ejecutables conocidas popularmente como archivos BATCH o BAT.
Introducción al mundo de la programación batch, uso de los comandos más comunes de la consola de CMD, para crear aplicaciones que se pueden usar en Windows para infinidad de tareas prácticas.
Como crear un archivo batch paso a paso.
Ejemplos prácticos para copiar y pegar el código, consejos y trucos.
Precauciones a tener en cuenta.
Herramientas para descargar que facilitan la creación de estas aplicaciones y probarlas correctamente.


¿Que son los archivos batch?


Los archivos batch, también conocidos popularmente como archivos BAT, son aplicaciones ejecutables.
Son simplemente pequeños archivo de texto plano, que contienen códigos o instrucciones escritos en el lenguaje de MSDOS, estos códigos son lo que se conoce como comandos.
Estos archivos son guardados con la extensión de archivo .bat o .cmd. Al ejecutarse alguno de ellos (dar dos clics), Windows automáticamente inicia la consola o interprete de comandos de MSDOS y ejecuta las instrucciones o códigos que contienen en grupo, de forma secuencial.
La consola de CMD, también conocida como Símbolo del sistema, intérprete de comandos o consola de MSDOS, durante muchos años fue el medio de comunicación o intérprete entre la máquina y el usuario.
En los años 80 para utilizar una PC era necesario ser informático, lo que limitaba el uso de estos equipos a un grupo reducido de personas. Al surgir el primer sistema operativo Windows, este incluye una interface entre el usuario y la computadora, que permite que un clic u otra acción del usuario, se conviertan en una secuencia de comandos.
Con el paso del tiempo lógicamente, disminuye el uso de la consola de CMD pero se mantiene completamente vigente el empleo de los comandos en las aplicaciones batch.
Cualquier usuario, aun con pocos conocimientos, puede crear tus propios archivos batch para facilitar la ejecución de varias tareas en Windows.
El propósito de este artículo es estimular y facilitar el uso de estas aplicaciones.


Uso y empleo de los archivos batch en Windows


El principal uso de estos archivos en la actualidad, es la de realizar tareas sencillas pero tediosas y repetitivas, de acuerdo a la labor en que usemos cada uno nuestra PC y así evitar la instalación de software de terceros, que a la larga harán la misma función, que un archivo batch creado con un simple archivo de texto.
Los archivos batch son ideales para varias funciones, por ejemplo hacer copias, extraer y listar información, eliminar virus, planificar tareas, ejecutar limpiezas en el sistema, hacer respaldos de datos e información, automatizar descargas de internet, en fin infinidad de aplicaciones.
Un ejemplo, la manera más eficiente actualmente de descargar archivos de internet es mediante WGET, (se explica su uso en otro artículo), para eso se utiliza un batch que tiene solo el siguiente código:
wget -c -S -r dirección url.
Uso de Wget para descargar archivos de internet

¿Cómo crear un archivo batch en Windows?


Para crear un archivo batch solo es necesario un editor de texto plano, que puede ser el Notepad++ (recomendado) o hasta el simple Bloc de notas de Windows.
Notepad++ lo puedes descargar gratis de sourceforge.net, resalta con colores diferentes la sintaxis, lo que permite percatarse fácilmente de cualquier error en el código empleado.
No es necesario conocimientos de informática, solo comprender simples reglas que verás más abajo y familiarizarse con algunos de los comandos más empleados.
La estructura de un archivo batch es sencilla:
• Una primera línea: @ECHO OFF (no es imprescindible para que funcione)
• Las instrucciones que pueden constar de una simple línea o de varias, todas se irán ejecutando en su orden.
• Al final generalmente se emplea EXIT o EOF que cierra la ventana de la consola.
Al hacer tus primeros batch siempre emplea PAUSE después de las instrucciones, su uso como la palabra indica, pausa y permite ver mensajes de error, en caso de que exista alguno, de otra forma la consola se cerrará y será imposible conocer lo que lo ha causado.
La estructura de un archivo batch


Trucos para crear archivos batch rápidamente


Script para crear plantilla de archivos batch

Pequeña aplicación que facilita crear un archivo batch en blanco, solo con el encabezado @ECHO OFF, dentro de un archivo de texto con la extensión .CMD.
Es de extrema utilidad si necesitamos crear regularmente estos archivos.
Para crear el script o aplicación, haz lo siguiente:
1- Crea un nuevo archivo de texto y pega en su interior las siguientes instrucciones:
Set FSO = CreateObject("Scripting.FileSystemObject")
Set lf = FSO.OpenTextFile("batch.cmd", 8, True)
msg = "@echo off"
lf.WriteLine(msg)
lf.Close
Set lf=Nothing
Set FSO=Nothing
2- Guárdalo, pero con la extensión de archivo .VBS.
Es todo.
Al ejecutarlo se crea en el mismo directorio, un nuevo archivo llamado "batch.cmd".
Solo necesitas comenzar a agregarle código.
Lee más información: Qué son los archivos VBS, usos prácticos y como crearlos


Comando para crear plantilla de archivos batch

Crea de forma rápida una sencilla plantilla de un archivo batch, mediante un comando.
Copia y pegar el siguiente código en la herramienta Ejecutar (WIN + R) y presiona la tecla Enter:
cmd.exe /c echo @echo off>%userprofile%\Desktop\sample.cmd
Se creará una pequeña plantilla en tu escritorio llamada "sample.cmd"
Para utilizarla da un clic derecho encima y en el menú selecciona "Editar", para abrirla con el Bloc de Notas.
Introduce el comando a ejecutar y guarda los cambios mediante CRL + G.
Por ejemplo introduce:
echo Hola esto es un batch
pause>nul
Sin cerrar el Bloc de notas, prueba el batch.

Crear un archivo batch, método paso por paso


• Comenzaremos creando un Simple y clásico "Hola Mundo", escribiendo en tu plantilla el siguiente código:
@echo off
echo Hola Mundo
pause
exit
• Guardamos el archivo como nombre.cmd y lo ejecutamos, el archivo tomará el icono de una rueda dentada y nos aparecerá una pantalla negra que dirá "Hola Mundo", luego una línea abajo mostrará "Presione una tecla para continuar"
La explicación:
echo
Muestra un texto en pantalla, que es el texto que viene después, en este caso es: Hola Mundo.

pause
Como bien se lee, pausa la ejecución del código. Además muestra el texto: "Presione una tecla para continuar".

exit
Cierra la ventana de comandos.

Funciones de algunos comandos


CD o CHDIR:
Sirve para cambiar de Directorio o mostrar el nombre del actual. Para usarlo, usa CD o CHDIR seguido de la ubicación del directorio al cual nos moveremos.Por ejemplo:
CD C:\
CHDIR C:\
Los ejemplos anteriores hacen exactamente lo mismo, cambian al Disco C

COPY:
Copia uno o más archivos a otro destino.
Su sintaxis es la siguiente:
COPY "Dirección del archivo" "Nueva dirección"
Por ejemplo:
Copy C:\archivo.txt C:\archivo2.txt
Aquí copiaríamos un archivo del Disco C llamado archivo.txt como archivo2.txt, para acortar un poco podríamos usar:
CD  Copy archivo.txt archivo2.txt
Donde primero cambiamos de directorio al Disco C con CD C:\ y luego al copiar no tenemos que especificar que el archivo está en el Disco C, ya que ya nos encontramos en él.

DEL:
Elimina uno o más archivos, su sintaxis es:
DEL ARCHIVO
También se puede usar con los siguientes parámetros:
DEL /F /Q archivo
Donde /Q logra que la consola no pida la confirmación de eliminar el archivo y /F permite eliminar archivos que poseen el atributo de solo lectura

MOVE:
Sirve para mover un archivo. Su sintaxis es:
Move Dirección Archivo Nueva Dirección


CLS:
Sirve para limpiar el contenido de la pantalla.
Por ejemplo:
@echo off
ECHO Hola, Cuando pulses una tecla se borrará el contenido y cambiará por otro.
PAUSE
CLS
ECHO ¿Ves?
pause
exit
Si quisiéramos averiguar más sobre las funciones, o conocer algunas nuevas por nuestra propia cuenta podemos escribir en el CMD el nombre del comando seguido de /? y aparecerá toda la información necesaria.


Ejemplos prácticos de archivos batch


Cargar una página de internet

El comando START permite iniciar una aplicación.
Al usarlo con la dirección URL de una página web de internet, inicia el navegador web predeterminado y carga la página solicitada.
Por ejemplo:
@echo off
START https://norfipc.com
Se pueden incluir varias líneas con direcciones diferentes, incluso usar un navegador determinado, especificando el nombre de su ejecutable justo antes de la dirección.

Copiar, mover y eliminar archivos

Con el siguiente código podemos crear un archivo batch que copie un archivo, luego lo mueva a otro directorio, borre el original y vuelva a copiar el copiado.
En la carpeta donde crearás el archivo batch, crea un archivo de texto llamado copiame.txt. En él, escribe lo que quieras. Este será el archivo que copiaremos.
Código:
@echo off
echo Hola, Copiaremos un archivo
pause
COPY copiame.txt copiado.txt
MOVE copiado.txt C:\copiado.txt
DEL copiame.txt
CD C:\
COPY copiado.txt copiado2.txt
EXIT
Guárdalo en la carpeta como prueba.cmd, y ejecútalo. Después, si vamos al Disco C, veremos que hay dos nuevos archivos de texto, uno llamado: copiado.txt y otro: copiado2.txt.
También si vamos a la carpeta del batch, comprobaremos que no está el archivo de texto original, copiame.txt.

Crear nuevos archivos

Usando archivos batch podemos crear otros archivos diferentes, para eso podemos usar algo como lo siguiente:
echo TEXTO DE PRIMERA LINEA > nombre.extensión
echo TEXTO SEGUNDA LINEA >> nombre.extensión
echo TEXTO SIGUIENTE LINEA >> nombre.extensión
Al escribir ECHO seguido de un texto y el signo > creamos un archivo con el nombre que siga.
Si ocupamos un ECHO seguido de un texto y el doble signo >> se escribirá en la siguiente linea vacía del archivo que prosiga.
Hagamos la prueba:
echo Creando un Archivo de texto > nuevo.txt
echo Esta es la Segunda linea >> nuevo.txt
echo Y esta es la Siguiente >> nuevo.txt
echo Esto esta genial >> nuevo.txt
Aj ejecutarlo, la pantalla negra se abrirá y cerrará, pero en la carpeta en la que está nuestro batch, se habrá creado un nuevo archivo nuevo.txt que si lo abrimos, dentro tendrá escrito lo que especificamos anteriormente.
Además se puede jugar con los caracteres. Un ejemplo, donde se cambiaron los colores, los caracteres y el pause: imagen de la ventana de msdos
El código empleado es el siguiente:
@echo off
color 30
echo ==================================
echo = =
echo = Personalizado =
echo = =
echo ==================================
echo.
echo.
echo Para salir presiona una tecla.
pause>nul
exit
Vale mencionar que ECHO, seguido de un punto, sirve para saltarse una línea.


Usar variables en los archivos batch


Las variables son muy importantes y prácticas en los archivos batch, aprende como crearlas.
SET NOMBREVARIABLE = VALOR
Para escribir una variable creada anteriormente, debemos escribir su nombre entre los signos %%
Por ejemplo:
@echo off
set Nombre = Norfi Carrodeguas
echo %Nombre%
pause
En el caso anterior primero creamos la variable llamada Nombre y le dimos un valor, posteriormente la escribimos.
También podemos crear variables dinámicas y dar la opción que el usuario la defina, se hace de la siguiente forma:
@echo off
SET /P Nombre = Escriba su Nombre:
En este caso al ejecutar el archivo batch, solo se mostrará en la consola el mensaje: "Escriba su Nombre:"
Al usuario ingresar los caracteres que decida y oprimir la tecla Enter, el batch ejecutará la acción contenida en el código, usando como valor de la variable el texto que el usuario ingresó.

Realizar operaciones matemáticas con archivos batch


Mediante archivos batch también podemos realizar operaciones como multiplicar, sumar, dividir, etc. usando el modificador /A, por ejemplo de la siguiente forma hacemos la operación: 2 + 43 = 45.
SET numero1 = 2
SET numero2 = 43
SET /A suma = %numero1% + %numero2%
echo %suma%
pause
exit
Usando el modificador /A, lo que quede a la derecha del signo igual (=). se consideran expresiones numéricas a evaluar. Su pueden usar los siguientes caracteres como operadores matemáticos:
+ - * / %



Consejos y tips para la creación y uso de los archivos batch


Tips y consejos
➔ Para comentar, es decir escribir comentarios dentro del código de tus batch, antepone REM al comienzo de la línea, esta no será interpretada por la consola.
También es posible utilizar dos puntos dobles "::"(sin las comillas).

➔ Cuando al ejecutar un batch, este se cierre y te quedas con la duda de lo que sucedió, agrega PAUSE antes del final del código, lo que te permitirá saber si hay algún error, también puedes insertar varios en diferentes líneas, e ir ejecutándolo por partes.
Al igual que PAUSE puedes utilizar PAUSE>NUL, entonces no se mostrará el famoso mensaje "Presione una tecla para continuar…."

Como usar redireccionadores en los archivos batch


➔ Puedes combinar varios comandos en un archivo batch intercalando el signo |, esto indica que se ejecutará el segundo comando utilizando el resultado del primero, un ejemplo es:
ipconfig|FINDSTR /C:"Máscara de subred"
Esta línea abre IPCONFIG y a continuación busca la cadena Mascara de subred y si existe muestra el resultado.
➔ Si empleas dos barras el segundo comando se ejecutará solo si el primero falla, por ejemplo:
COPY D:\NOEXISTE C:\ || ECHO No se pudo copiar el archivo
➔ Para redireccionar un primer comando a un segundo, intercala un amspersand entre ambos, pero si usas dos caracteres estas condicionando la ejecución del segundo al éxito del primero, es como insertar la frase "Si es así, entonces", por ejemplo:
START calc.exe && ECHO La calculadora se inicio con éxito
➔ Para direccionar el resultado de un comando a un archivo de texto utiliza:
Comando > archivo.txt
➔ Si deseas seguir agregando datos al mismo archivo creado utilizando otro comando utiliza:
Comando2 >> archivo.txt
➔ Para pasar el contenido de un archivo de texto a un comando usa:
Comando < archivo.txt
➔ Para mostrar un archivo de texto en pantalla usa:
TYPE texto.txt
Algunos ejemplos, se explican solos:
DIR C:\ >Lista_de_C.txt & DIR D:\ >Lista_de_D.txt
FIND /i "Alberto" < texto.txt > resultado.txt
MEM /C >> MemLog.txt
DATE /T >> MemLog.txt
TYPE texto.txt > texto.html
➔ Donde quiera que haya una cadena que tenga espacios tienes que utilizar las comillas, en las rutas a los archivos también es recomendado utilizarlas.
➔ Cuando la ruta a un archivo determinado es muy complicada, lo más fácil es dar clic en las Propiedades del archivo y copiar la ruta que allí aparece.
También para eso puedes instalar una clave del registro que agrega al menú contextual del mouse la facilidad de que al hacer clic en un archivo del explorador y seleccionar "Copiar Ruta" puedes pegarla en tu batch.
Agregar en el menú contextual la opción de Copiar la ruta del archivo o carpeta
➔ Para crear un mensaje en un batch, es decir una ventana que muestra una indicación o comentario al usuario, escribe en el batch lo siguiente:
MSG * Este Es Mi Mensaje
➔ Para que se muestre en el batch la fecha y la hora utiliza las variables DATE y TIME de la siguiente forma:
@echo off
echo Fecha:%date%
echo Hora:%time%
➔ Para detener un proceso o programa determinado averigua su nombre o identidad exacta en el Administrador de tares y utiliza:
taskkill /im /f programaespecifico.exe
taskkill /f /im wmplayer.exe
taskkill /f /im explorer.exe
En el caso del explorer se utiliza mucho para poder solucionar los bloqueos del explorador de Windows, al cerrarse el explorador para iniciarlo abre el administrador de tareas, selecciona Nueva tarea y escribe:
Start explorer.exe
➔ Para ejecutar los comandos no siempre es necesario abrir la consola, puedes ejecutarlos introduciéndolos directamente en el cuadro que se encuentra en Inicio, solo anteponiendo CMD o CMD.EXE de las siguientes dos formas:
Introduce CMD /K comando+ opción y oprime Enter.
Se ejecutará el comando con la opción y dejara abierta la ventana de cmd.
Introduce CMD /C comando+ opción y oprime Enter.
Se ejecutará el comando con la opción y cerrará la ventana de cmd al terminar.
Dos sencillos ejemplos:
CMD /K IPCONFIG /ALL
CMD /C START http://google.com
Ojala que este artículo le haya interesado y le haya servido de alguna ayuda y estímulo para introducirse en este mundo tan interesante y práctico.
En las páginas de este sitio encontrarás bastante contenido relacionado, así como muchos archivos para descargar.

Páginas relacionadas