Você está na página 1de 6

Programación Batch

Publicado el abril 1, 2017 de crlpiban

¿Qué es la programación batch?

Traducido también a “programación por lotes (batch)”, es un tipo de


programación de los comandos internos y externos del MSDOS en un archivo
con extensión “.BAT”, que se ejecuta en el command.com o llamado tambien
command y cmd (es solo una aplicación).

Es utilizado para crear programas con una lógica simple pero poderosa ya que
puede formatear el disco, apagar la pc, reiniciar la , extraer datos de un
directorio a otro, etc. Actualmente estos programas son bloqueados
por Windows pero es útil para aprender a programarlos

Estructura de un programa batch, debe guardarse con la extensión “.bat


“(mi_programa.bat)

@echo off
exit

Veamos un ejemplo sencillo


Ejemplo 1.

@echo off = inicio del script


@echo off title = coloca un titulo a la ventana

title mi primer programa batch color (código del color) = Cambia el color al texto

color 4E echo = permite escribir texto

echo Esta es una linea echo. = escribe un salto de linea

echo. pause >nul = Solo realiza una pausa

pause >nul pause = realiza una pausa y envía un mensaje (presiona una tecla para
continuar…)
echo Segunda linea
exit = cierra la ventana del script
pause

exit

En el ejemplo 1 se podrás notar que es programación estructurada y se ejecuta


en forma descendente cada orden.

Este es el código de colores:


0 = Negro 1 = Azul 2 = Verde

3 = Aguamarina 4 = Rojo 5 = Púrpura

6 = Amarillo 7 = Blanco 8 = Gris


9 = Azul claro

A = Verde claro B = Aguamarina C = Rojo

D = Púrpura E = Amarillo F = Blanco

ejemplo 2:

@echo off

title Creando carpeta

echo Se esta creando tu carpeta….

md carpeta_1

pause

echo Carpeta creada exitosamente…

pause

exit

En el programa 2 notarás que pueden se ejecuta el comando: md (make


directory), el cual crea una carpeta o directorio.

También se puede trabajar con variables y estructuras, veamos unos ejemplo.


@echo off @echo off
@echo off
title Calcular Promedio de dos title Division de dos numeros
title Estructura
numeros set/p uno=Teclea el numerador:denominador
Repettiva
set/p num1= teclea el primer set/p dos=teclea el denominador
color 0A
numero: if %dos%==0 (goto nosepuede) else (goto
set/p num2= teclea el segundo: dividir):nosepuede :regresar
set/a prom= (%num1% + echo El denominador no puede ser cero. echo Esto s
%num2%) / 2 goto denominador repitiendo
echo. goto
echo el promedio es %prom% exit
:dividir
pause >nul
set/a tres=%uno%/%dos%
exit
echo El resultado de %uno%/%dos% es %tres%
pause>nul
exit

Para realizar las comparaciones lógicas podemos utilizar

%var% == valor Verifica si var es igual al valor

%var% LSS valor Verifica si var es menor que el valor

%var% GTR valor Verifica si var es mayor que el valor

%var% LEQ valor Verifica si var es menor o igual al valor

%var% GEQ valor Verifica si var es mayor o igual al valor

El lenguaje batch permite crear las variables que necesitemos, pero existen
algunas variables ya definidas:

 %ALLUSERSPROFILE% =>Esta variable devuelve la localización del perfil de


todos los usuarios.
 %APPDATA% => Devuelve el lugar donde las aplicaciones guardan los datos
por defecto (Normalmente la carpeta de Archivos de Programa).
 %CD% => Devuelve el directorio en el que estás en ese momento (se explicará
más adelante con sus comandos para cambiarse de directorio).
 %CMDCMDLINE% => Muestra el comando exacto empleado para acceder al
intérprete de comandos (cmd.exe).
 %CMDEXTVERSION% => Devuelve la extensión de nuestro intérprete de
comandos.
 %COMPUTERNAME% => Devuelve el nombre del equipo.
 %COMSPEC% => Devuelve la ruta de la shell de comandos.
 %DATE% => Devuelve la fecha actual.
 %ERRORLEVEL% => Devuelve el código de error del último comando
ejecutado.
 %HOMEDRIVE% => Devuelve la unidad en la que está el directorio en el que
estás actualmente.
 %HOMEPATH% => Devuelve la ruta completa a dicho directorio.
 %LOGONSERVER% => Devuelve el nombre de nuestro servidor.
 %NUMBER_OF_PROCESSORS% => Devuelve el número de procesadores
instalados en el equipo.
 %OS% => Devuelve nuestro sistema operativo, con la excepción de Windows
2000 y XP que lo devuelven como Windows_NT.
 %PATH% => Devuelve la ruta a la carpeta de los ejecutables más importantes
del sistema.
 %PATHEXT% => Devuelve las extensiones de archivos que nuestro sistema
considera ejecutables.
 %PROCESSOR_ARCHITECTURE% => Devuelve la arquitectura del
procesador.
 %PROCESSOR_IDENTIFIER% => Devuelve la descripción del procesador.
 %PROCESSOR_LEVEL% => Devuelve el número de modelo de procesador.
 %PROCESSOR_REVISION% => Devuelve el número de revisión del
procesador.
 %PROGRAMFILES% => Devuelve la carpeta donde se guardan los programas
(normalmente Archivos de Programa).
 %RANDOM% => Devuelve un número al azar entre 0 y 32767.
 %SYSTEMDRIVE% => Devuelve la unidad que contiene el directorio raíz del
sistema.
 %SYSTEMROOT% => Devuelve la carpeta de administración, que suele ser
C://Windows
 %TEMP% => Devuelve el directorio donde están los archivos temporales.
 %TMP% => Igual que el anterior.
 %TIME% => Devuelve la hora actual.
 %USERNAME% => Devuelve el nombre del usuario actual.
 %USERPROFILE% => Devuelve la ruta del directorio donde están los archivos
del usuario actual.
 %WINDIR% => Devuelve la ruta de la carpeta del sistema operativo

Veamos un ejemplo utilizando estas variables:

@echo off
title Hora actual
echo El usuario %USERNAME% ha solicitado ver la hora
pause
echo La fecha es %DATE% y son las %TIME%
pause>nul
exit

Você também pode gostar