PDF de programación - Curso de Batch desde 0 - Para quieres se inician en la programación

Imágen de pdf Curso de Batch desde 0 - Para quieres se inician en la programación

Curso de Batch desde 0 - Para quieres se inician en la programacióngráfica de visualizaciones

estrellaestrellaestrellaestrellaestrella(1)
Actualizado el 21 de Marzo del 2018 (Publicado el 16 de Diciembre del 2017)
10.726 visualizaciones desde el 16 de Diciembre del 2017
189,3 KB
23 paginas
Creado hace 12a (09/11/2007)
Preparatorio: ¿Qué es Batch? (Pagina 2)

Parte 2: Primeros comandos y Sintaxis en Batch (Pagina 2)

Parte 3: Variables (Pagina 4)

Parte 4: If , Bucles y Otros comandos (Pagina 6)

Parte 5: Registro en Batch (Pagina 8)

Parte 6: FTP con Batch (Pagina 10)

Parte 7: Shutdown, Assoc, Attrib , AT (Pagina 11)

Parte 8: El P2P con batch (Pagina 13)

Parte 9: TASSKILL y otros (Pagina 14)

Parte 10: Funciones en Red y FOR (Pagina 19)

















Autores: Saok y Azrael

Escritura a pdf: R0t



1

Lo primero y principal

Debes saber cuales son los comandos batch(más adelante te los explicaremos mejor,
pero así vas calentado).

Para saber los comandos debes ir a:

Inicio>ejecutar

Aquí escribes “cmd” (sin pone las comillas)

Si te sale una ventana negra con letras blancas vas bien si no repítelo todo y fíjate bien.

En esta ventana que te a salido escribe Help

Te saldrá una lista con todos los comandos y sus características

Para saber más sobre un comando escribes:

nombre_del_comando /? ejemplo:

del /?

Ahora si quieres ponte a leer sobre ellos.

Aquí tenéis todos los comandos de la shell:

inicio>ejecutar y escriban:

ms-its:C:\WINDOWS\Help\ntcmds.chm::/ntcmds.htm

¿Qué es Batch?



¿Un lenguaje? ¿Unos códigos? ¿Una interpretación?

Hay muchas maneras de denominar a batch ya que la gente lo llama de muchas
maneras. Yo como escritor de batch (o programador para los sensibles) lo llamaría así:

Batch son unos scripts interpretados por el sistema a través de la shell .

Estos scripts pueden ser ordenados en bloque:


-Entrada
-Primera línea
-Segunda línea
-Salida



2

Pero dependiendo la segunda línea de la primera, y la tercera de la segunda y así
sucesivamente. Esto quiere decir que si un batch falla en su línea 52 el resto del batch
no seguirá adelante.

Batch no es compilado si no que al igual que perl son interpretados, que para que los
newbies lo entiendan mejor, se podría decir que se van leyendo como un libro jeje.





Primeros comandos y Sintaxis en Batch

Lo primero que deber saber que todo batch se comienza poniendo:

@ echo off

Esto desactiva el eco o repetición, es decir, que no te saldrá la ruta de donde se
encuentra más el comando, pruébalo por ti mismo y comprenderás.

Notan la diferencia? bien sigamos.

-Como mostrar un texto en pantalla:

Se usa el comando “echo” de esta manera:

echo Texto a mostrar

ejemplo:

echo Esto es un tutorial para Glomur

tras poner esto, deben usar el comando pause(parar) o pasara a la siguiente línea sin casi
verse. Con todo lo que tenemos aprendido seria así:

@ echo off
echo Texto a mostrar
pause
exit

–Si lo que quieren mostrar es un mensaje de tipo ERROR usaran el comando msg).Su
forma de empleo es la siguiente:

msg * texto a salir

ejemplo:

msg * Esto es un tutorial para glumor.



3

Comandos Copiar, Mover, Borrar

Los comandos copiar, mover y borrar son copy, move, del. Sus usos respectivamente
son:

-copy c:\ruta\origen c:\ruta\destino

por ejemplo, suponemos que queremos copiar un .txt :

copy c:\carpeta\nombre.txt c:\carpeta\nombre.txt

El comando move seria exactamente igual pero con el comando move:

move c:\carpeta\nombre.txt c:\carpeta\nombre.txt

El comando Del debería usarse con sus modificadores.Su utilización seria así:

del /modificador c:\ruta\archivo

ejemplo(pretendemos borrar un .txt):

del /q /s c:\carpeta\nombre.txt

Bien con todo lo aprendido hasta ahora ya podríamos hacer lo siguiente:

@ echo off
echo Se va a copiar el .txt
pause
copy c:\archivo\nombre.txt c:\archivo\nombre.txt
echo Se va a eliminar el archivo .txt original
pause
del /q /s c:\archivo\nombre.txt
msg * Trabajo completado!
exit

Variables



Bueno asumo que si ya estas leyendo esto es que habrás leído antes las partes 1 y 2 de
este curso, por lo que en algún momento te habrás pasado por el área de Comandos
Batch y les habrás echado un ojo. Bueno ya a partir de aquí no te recordare a cada paso
lo de los comandos eso ya lo debes saber tu.

Empecemos hoy estudiaremos el tema de las variables no tocaremos todas sus
funciones (porque son muchas) pero si las básicas para un escritor.

Aquí el comando maestro será SET , con este comando aremos infinidad de cosas y en
muchas ocasiones lo acabaras usando.



4

-Ínteractuación con el usuario

Ya estas alturas estarías deseando escribir un programa que interactúe con el usuario, es
decir, que el que este frente de la pantalla pueda meter datos. Esto lo vamos a lograr con
el comando Set (y sus modificadores) y con el comando Echo (par que quede bonito).

La forma en la que se crea una variable en la que el usuario le dará un valor es bajo esta
sintaxis de Set:

set /p nombrevariable=

El usuario introduciría un dato de cualquier tipo, que se asignaría a nombrevariable,
para usar las variables empleamos los signos % delante y detrás del nombre de la
variable:

%nombrevariable%

Ahora con lo aprendido en las partes anteriores vamos a crear un simple codigo que te
ara entender todo esto:

@ echo off
echo Curso Batch
echo.
echo Introduce tus años
set /p edad=
echo vaya vaya tienes %edad% años
pause
msg * Gracias por visitar Glomur
exit

Después de ver el código lo primero que te preguntaras porque entre las líneas 4 y 5 no
introdujo un pause si fue lo que nos dijo en la parte 2. No, no me equivocado, set en ese
caso hace que pare el programa ya que el dato que tiene que introducir (por así decirlo)
es importante.

-Creando valores semifijos


Un dato importante es que son “semifijos” porque solo duran mientras que esta el batch
en ejecución o mejor dicho, mientras esta la shell abierta. Estos datos son muy
cómodos, para no tener que estar recordando datos constantemente y poder resumirlo en
una palabra.
Esto se crea bajo el comando set con esta sintaxis:

set nombrevariable=datovariable

Es importante decir, que batch, no reserva espacios de memoria por lo que si creas otra
variable con el mismo nombre, se escribirá sobre la actual.

Aquí un ejemplo:



5

@ echo off
set devolucion=2015845215
set nueva=2015844215
……
……
creo que queda claro no así en vez de tener que introducir el numero tan largo podemos
resumirlo poniendo %devolucion%

-Operadores matemáticos usando Set

Con esto me refiero a sumar, restar, multiplicar y dividir.
Todo esto se consigue bajo el comando set con la siguiente sintaxis:

set /a resultado=dato1 operador dato2

Para que lo entendáis mejor os lo pongo de ejemplo:

set/a resultado=5 + 5

Con esto se almacena en la variable resultado la suma de 5+5

Fácil verdad? de esto ya solo me queda aclarar una cosa y es que a batch son se le dan
bien los decimales jejeje así que no pongáis números como 5 -
4.999999999999999999991



If, Bucles y Otros comandos

Esta puede ser una de las partes más complicadas y extensas.
Empezare flojito para no atosigar a tu cerebro tan pronto.

-Limpiando la pantalla
Batch tiene un comando limpiador que sirve para eliminar todo lo que hay en la shell
escrito, el comando es cls el cual no tiene sintaxis se pone cls y listo.

-Bucles

Los bucles se componen de dos partes el comando que realiza el salto (goto) y la
etiqueta que lo recibe. Con los bucles podemos hacer saltos de línea para llegar a otra
parte del código sin ejecutar ciertas líneas antes la sintaxis, apenas es complicada:

:bucle (esta es la etiqueta)
……. (Líneas que se ejecutaran
……. continuamente)
goto :bucle (volverá a la etiqueta)

Simple verdad? pues así tenemos un bucle que lo puedes usar como quieras o haciendo
salto de líneas, me explico, supongamos que hemos desarrollado un código, pero
necesitamos ejecutar primero un trozo que esta al final podríamos hacer esto:



6

:inicio (primera etiqueta)
………. (Código)
………. (Código)
goto :trozo (saltamos a la línea que nos interesa)
:seguimos (volveremos aquí cuando acabemos en la línea
……… que salteamos antes)
………
………
:trozo (línea a la que hemos venido)
………
………
goto :seguimos (regresamos al punto donde nos quedamos)

Creo yo que no esta complicado no? Bueno sigamos

-Comparando cosas y otras opciones (comando IF)

Veamos, para que te hagas una idea con el comando if podemos comprobar si existe
algo, comparar dos cosas, crear bucles de tiempo determinado, etc.

—-Comando if para la comparación

Os voy a enseñar a comprar dos variables que creo que no es muy complicado la
sintaxis es así:

if variable1==variable2 (comando)

Ejemplo

if %saok%==%redactor% (msg * saok is the redactor1)
con esto compararíamos si lo que hay dentro de la variable “saok” y la variable
“redactor” es la misma se muestra un mensaje.

If también nos da la opción de hacer algo si el resultado no es satisfactorio (lo iba a
explicar con 0 y 1 pero así se entiende mejor). La sintaxis es la siguiente:

if %variable1%==%variable2% (comando) else (comando)

ejemplo:

if %saok%==%redactor% (msg * si es cierto) else (msg * no es cierto)

Con esto lo que hacemos se si la variable “saok” es igual que “redactor” muestre un
mensaje, pero si no es igual, muestre otro mensaje.

Entre los paréntesis (siempre con paréntesis) se puede colocar el comando que se quiera.

— Comprobando archivos

Con if se puede comprobar si un archivo existe. La sintaxis es la siguiente:



7

if exit ruta (comando)

Ejemplo:

if exit c:\carpeta\archivo.txt (msg * existe)

Esto lo que hace es que si existe el archivo.txt en esa ruta muestra un mensaje. El
comando entre paréntesis se puede cambiar. Aquí también se puede añadir la función
else para que en caso de que no exista haga otra cosa

if exit c:\carpeta\archivo.txt (msg * existe) else (msg * no existe)

—Creando Búcles limitados.

Aquí estuve tratando d
  • Links de descarga
http://lwp-l.com/pdf7915

Comentarios de: Curso de Batch desde 0 - Para quieres se inician en la programación (1)

jose anti
28 de Mayo del 2019
estrellaestrellaestrellaestrellaestrella
No ha dejado ningún comentario
Responder

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad