martes, 18 de julio de 2017

Programación Windows Batch (CMD) parte 4

Siguiendo con la serie de post sobre programación ( 1, 2, y 3) batch ahora veremos algunas cosas como operaciones aritméticas, operadores lógicos  y uso de ficheros.

Cuando somos administradores de servidores o desarrolladores muchas veces tenemos que realizar tareas que nos quitan, relativamente, tiempo valioso que podríamos ocupar para otras cosas (como ver nuestro Facebook, jeje, broma).  Aprender a escribir scripts que nos faciliten algunas tareas siempre es útil. Por ejemplo, conocer todas las características técnicas de nuestro equipo de cómputo nos servirá cuando se realiza peritajes informáticos y soporte al equipo. Realizar respaldos automáticos a nuestras carpetas , archivos y directorios será más sencillo gracias a un script. Pero antes debemos aprender lo básico de la programación en batch.




Ejemplo 1. Operaciones aritméticas básicas.
aritmetica.bat
@echo off
::Nombre del archivo, imprimirá: aritmetica.bat
echo %0
:: Set nos servirá para asignar valores a una variable
set a=21
set b=32
:: SET /a nos servirá para realizar operaciones
:: los operadores aritméticos son iguales a los de cualquier otro leng. de programación
set /a suma=%a%+%b%
set /a resta=%a%-%b%
set /a producto=%a%*%b%
set /a division=%a%/%b%
:: Mostramos los resultados
echo Suma: %suma%
echo Resta: %resta%
echo Producto: %producto%
echo Division: %division%
pause

No hay mucho que explicar. Solo se trata de  operaciones aritméticas básicas. Y si el usuario quiere introducir valores, ¿se puede? La respuesta es si.

Ejemplo 2. Introducir valores desde terminal (paso de parámteros). 
aritmetica_enter.bat
@echo off
echo Primer: valor %1, Segundo valor: %2
:: Asignamos sus valores a unas variables a y b
SET a=%1
SET b=%2
set /a suma=%a%+%b%
set /a resta=%a%-%b%
set /a producto=%a%*%b%
set /a division=%a%/%b%
:: Mostramos los resultados
echo Suma: %suma%
echo Resta: %resta%
echo Producto: %producto%
echo Division: %division%pause

¿Cómo usar el script? Abrimos una terminal CMD.exe, nos ubicamos en el directorio del archivo y escribimos: aritmetica_enter.bat 34 43

Ejemplo 3. El mismo ejemplo, pero con la opción de que el usuario introduzca los valores desde teclado y no en paso de parámetros como el ejemplo anterior. Usaremos SET /p para introducir valores.
aritmetica_enter_p.bat
@echo off
echo Nombre del archivo %0
echo Primer numero:
SET /p a=
echo Segundo valor:
SET /p b=echo Primer: valor %a%, Segundo valor: %b%
set /a suma=%a%+%b%
set /a resta=%a%-%b%
set /a producto=%a%*%b%
set /a division=%a%/%b%
:: Mostramos los resultados
echo Suma: %suma%
echo Resta: %resta%
echo Producto: %producto%
echo Division: %division%pause

Ejemplo 4. Operadores lógicos.
EQU  equivale a  =
NEQ  equivale a !=
LSS   equivale a <
LEQ  equivale a <=
GTR  equivale a >
GEQ  equivale a >=

Comprobar el número mayor de tres números.
mayor.bat
@echo off
set a=0
set b=90
set c=10
echo [%0]
echo %a%, %b% y %c%

:: Consideramos que %a% es el mayor(aunque no lo sea)
set mayor=%a%

IF %mayor% LSS %b% SET mayor=%b%
IF %mayor% LSS %c% SET mayor=%c%
::El número mayor será el b
echo El mayor es %mayor%

pause

Ejemplo 5. Generando un número aleatorio.
@echo off
echo Introduce numero:
set /p numero=
REM Número aleatorio
set ALEATORIO=%RANDOM%
IF %numero% EQU %ALEATORIO% echo Son iguales


Por un momento dejaré el tema y continuaré escribiendo más sobre batch.

Links:
https://www.elhacker.net/comandos-consola-windows-7.html
http://foro.elhacker.net/buscador-t132924.0.html



No hay comentarios:

Publicar un comentario

WMIC

¿Has tenido la necesidad de obtener  la licencia OEM de tu PC o alguna otra característica técnica?  Usualmente existen herramientas visua...