Activa JavaScript para disfrutar de los vídeos de la Mediateca.
Programación BAT-EMPLEO DE CONDICIONAL IF - Contenido educativo
Ajuste de pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
Explico a mis alumnos de FP Básica el empleo del condicional IF en programación BAT para Windows
Bien, pues empezamos. En la parte de archivosporlotes.bat os he puesto una segunda actividad con fecha de lunes 18.
00:00:00
Esto me lo pongo para tener yo un poco en control de que publico cada día.
00:00:12
Y es la de ms2 ficheros por lotes 2. En esta, al final, se toca el tema de los if, de los condicionales.
00:00:15
Que creo que lo tengo aquí abierto. Que es el último ejercicio, el ejercicio 9.
00:00:23
Pero antes de que lleguemos, quiero haceros un par de ejemplos para explicaros cómo funciona.
00:00:27
A ver, ¿podrías explicarme primero cómo ver a un tamaño decente lo que compartes, por favor?
00:00:35
Hazte más grande la ventana, tú mismo, ¿no puedes?
00:00:46
Retomamos grabación.
00:00:56
En la parte final del segundo archivo de las prácticas explico cómo funcionan los condicionales, esta es la segunda que tenéis publicada, el archivichero por lotes 2 y los condicionales nos sirven para introducir una bifurcación en nuestros algoritmos, en nuestros programas y poder decidir qué va a hacer nuestro programa en virtud a alguna condición que se esté cumpliendo o que no se esté cumpliendo.
00:00:57
cumpliendo. Por ejemplo, os pongo situaciones posibles. Si tengo dinero, voy al cine. Si
00:01:27
no tengo dinero, me quedo en casa. Otro ejemplo, si llueve, cojo un paraguas. Si no llueve,
00:01:34
pues no lo cojo. Si mi padre me deja el coche, no voy en transporte público. Si no me deja
00:01:40
el coche, pues cojo el bus. Si voy a dividir dos números, el divisor es cero, pues no
00:01:45
divido, doy un mensaje de error. Si pido al usuario un dato y el usuario no me lo da,
00:01:50
Pues no continúa la ejecución. Ejemplos. Esto significa que vais a poder empezar a meter en los scripts cierto control sobre lo que pasa dentro de vuestro código.
00:01:54
Y os voy a poner un ejemplo. Las sentencias principales que nosotros vamos a utilizar en el ejemplo de la actividad 2, os pongo cómo se comparan valores para valores numéricos.
00:02:06
si una variable es igual a un valor, si una variable es menor, es más grande, es menor o igual o mayor o igual
00:02:23
y luego también hay otros condicionales diferentes que os los he publicado en esta parte del aula virtual
00:02:29
en la parte de guía de fichero por lotes os he publicado el pdf que utilicé el otro día de introducción a los archivos .bat
00:02:37
en el que se veía un ejemplo de cómo se pone el go to, cómo se ponen los comentarios, etc.
00:02:45
Aquí hay una parte que pone desvíos condicionales con if
00:02:51
Y vienen unos ejemplos de uso muy interesantes como son por ejemplo
00:02:55
Comprobar si un archivo existe o si un archivo no existe
00:02:59
Y lo primero que quiero hacer con vosotros es un ejemplo
00:03:03
Vamos a hacer una prueba de pedir al usuario un archivo
00:03:07
Y por ejemplo copiarlo a una carpeta de backups
00:03:11
Pero que si el archivo no existe entonces se le da al usuario un mensaje de error
00:03:15
¿Qué vamos a hacer? Me abro en Notepad++, el editor, y lo voy a configurar para trabajar cómodamente
00:03:20
Voy a irme a la parte de vista y voy a decir que quiero ver una carpeta como área de trabajo
00:03:32
La carpeta que, y me aparece este panel de aquí a la izquierda
00:03:37
La carpeta que voy a establecer como área de trabajo, le voy a dar a añadir
00:03:41
Y dentro de la máquina virtual yo estaba trabajando dentro de este equipo en la unidad C con una carpeta que se llama MS2
00:03:45
voy a agregar esa carpeta
00:03:53
y dentro de esta carpeta
00:03:56
yo ahora me voy a hacer
00:03:58
aquí tengo la carpetita, me voy a hacer un archivo nuevo
00:03:59
documento de texto
00:04:06
y esto lo voy a llamar
00:04:09
01
00:04:11
if existe
00:04:11
archivo.bat
00:04:15
vale
00:04:17
y
00:04:19
una vez que lo he creado me aparece aquí
00:04:21
hago doble clic y se me abre
00:04:23
ya lo tengo abierto, así nos aseguramos
00:04:25
de que lo que voy a escribir
00:04:27
se va a guardar en el archivo correcto
00:04:28
vale, lo primero
00:04:31
arroba echo off
00:04:33
para que no nos saque por pantalla
00:04:35
el resultado de la ejecución de los comandos
00:04:37
o sea, la ejecución de los comandos
00:04:39
y no solamente el resultado de la ejecución
00:04:40
y voy a poner rem
00:04:42
el autor del script
00:04:43
rem la fecha
00:04:46
hoy es 19 de enero de 2021
00:04:47
y una pequeña descripción
00:04:50
de que hace este script
00:04:52
que es lo que quiero que haga
00:04:53
vale
00:04:54
Este script copia a la carpeta c2.backups, lo voy a hacer más grande, el archivo pasado como parámetro
00:04:55
Recordar que el primer parámetro va en tanto por 101
00:05:17
El script comprueba que si no existe el archivo pasado por el usuario
00:05:21
Mostramos mensaje de error
00:05:34
Si sí que existe, hacemos la copia
00:05:40
Lo que tendríamos que hacer en este archivo es
00:05:49
En este programa sería, el usuario va a ejecutar el programa, el usuario haría esto, el usuario ejecutaría esto, pondría el nombre del script, 0, 1 y tal
00:05:54
Y aquí pondría, imagínate, cositas.doc, esto es el nombre del script y esto sería el primer parámetro
00:06:14
Esto sería de lo que queremos que el programa haga una copia
00:06:27
¿Dónde lo voy a copiar? En una carpeta que se llame backups que esté dentro de la unidad C
00:06:31
¿Para que funcione? Pues la carpeta tendría que existir en la unidad C
00:06:36
Entonces, por si acaso no existe, primero vamos a crear c://backups
00:06:42
Esto es lo primero, creamos una carpeta en C
00:06:52
Voy a asegurarme de que a ver si existe o no existe
00:06:57
Y en C hay una carpeta que se llama backups
00:07:00
Que de hecho tiene cositas de pruebas de otro día
00:07:07
Vale, pues de momento vamos a cargarnosla
00:07:10
Porque en principio no tendría por qué existir
00:07:13
Y ahora lo que vamos a hacer es
00:07:15
Si en tanto por 101 el usuario nos ha pasado
00:07:19
Un archivo que sí existe
00:07:28
Hacemos la copia
00:07:32
vale, ¿cómo se pone esto?
00:07:34
lo tenéis en el pdf
00:07:38
if exist fichero y la orden
00:07:39
entonces esto se hace tal que así
00:07:45
if exist
00:07:47
el usuario nos habrá pasado el archivo
00:07:50
como parámetro del comando
00:07:53
y por defecto se habrá guardado directamente en tanto por ciento uno
00:07:56
así que es en tanto por ciento uno
00:07:59
donde va a estar lo que el usuario haya tecleado
00:08:01
si existe tanto por 101 y aquí lo que se haría sería, si vais a poner solo una instrucción se puede escribir aquí el comando
00:08:04
si vais a escribir más de una hay que hacer lo siguiente, abrir paréntesis, cerrar paréntesis, bajar el paréntesis abajo
00:08:14
y dentro tabulado a la derecha escribimos lo que queremos que pase si existe el archivo que nos ha pasado en tanto por 101
00:08:22
¿Qué queremos hacer? Queremos hacer un copy de lo que el usuario nos ha pasado, ¿a dónde? Hace dos puntos barra backups y luego decirle el archivo se ha copiado y un pause null, ¿vale?
00:08:32
Esto lo que haría sería
00:08:59
Que si el usuario nos pasa
00:09:02
En tanto por 101 un archivo que sí que existe
00:09:05
Sí
00:09:07
Es parecido
00:09:09
Como
00:09:11
Esto es parecido a CSS
00:09:11
Lo que CSS agrupa con llaves
00:09:14
En realidad es más parecido a Javascript
00:09:16
Pero sí, va por ahí
00:09:19
Vale
00:09:20
Si existe
00:09:21
Lo que el usuario nos haya puesto como parámetro
00:09:24
Se copia
00:09:27
Si es un archivo, lo copia
00:09:28
¿A dónde? Aquí. Y luego se dice, oye, que el archivo se ha copiado. Y luego podemos poner qué pasa si no existe. Si no existe, en caso de que no, hay que poner else.
00:09:30
Aquí la particularidad es que tiene que estar en la misma línea y separado por un espacio. Si no, da fallo. Tienes que abrir y cerrar paréntesis y dentro ponemos lo que va a pasar
00:09:42
si el usuario nos mete algo que no existe
00:09:52
o por ejemplo nos ha metido
00:09:55
una cadena vacía
00:09:57
lo siento
00:09:58
pero
00:10:02
esto que nos has metido
00:10:03
no es un archivo
00:10:06
o no existe
00:10:08
error al copiar
00:10:10
vale
00:10:12
vale, vamos a probarlo
00:10:17
me voy a crear un archivo de prueba
00:10:20
por ejemplo
00:10:25
un archivo de Word
00:10:26
y lo voy a llamar
00:10:28
cositas
00:10:30
vale, aquí dejo cositas
00:10:31
y aquí dejo la unidad c
00:10:37
estoy grabando verdad
00:10:41
yeah, ya lo he grabado en el cmd
00:10:44
y lo que tengo que hacer es
00:10:50
lo primero
00:10:54
ubicarme en la carpeta en la que se encuentra el script
00:10:56
ya estoy ubicado, estoy en ms2
00:10:58
si hago un dir, vemos que el script
00:11:00
está aquí, en el 0.1.16.artic.bat
00:11:02
y el docx que me he creado
00:11:05
el cositas, este está
00:11:06
y además la carpeta pruebas
00:11:08
Esto es esto de aquí
00:11:09
Hasta aquí todo bien
00:11:12
Vale, pues nada
00:11:13
Como el archivo se llama 01-ifexisarchivo.bat
00:11:15
No lo tengo que escribir entero
00:11:19
Con poner 01 y tabular
00:11:20
Realmente si quieres, con poner el primer carácter
00:11:21
Que coincide 0 y tabulas, como no hay nada más que empiece por 0
00:11:24
Me lo autocompleta
00:11:26
Hay que poner primero el nombre del programa
00:11:28
Que queremos lanzar
00:11:30
Un espacio y ahora el parámetro
00:11:31
Que lo que pongas aquí
00:11:34
Él internamente lo va a almacenar directamente
00:11:36
entrando por 101, ¿qué es lo que queremos guardar ahora? pues el cositas.docx, como existe, como cositas existe, porque está aquí, lo que estáis viendo
00:11:38
como lo veo yo, está aquí, vale, pues lo que tendría que hacer es, esto de aquí debería de cumplirse, debería de dar que es cierto, como es cierto
00:11:50
debería de entrar y hacer esta parte de aquí, solo esta, el else solamente lo hace en caso de que la parte de la línea 13 no se cumpla
00:11:59
Es decir, esto es en caso de
00:12:07
Por así decirlo, en caso de error
00:12:09
Si existe esto, lo copiamos
00:12:10
Vamos a ver que pasa
00:12:13
Vale, el archivo se ha copiado
00:12:16
Ay, voy a estornudar
00:12:20
Madre mía
00:12:24
Vale, ahora que vamos a hacer
00:12:25
Mira, si nos venimos
00:12:29
A la unidad C
00:12:31
Resulta que la carpeta backups se ha creado
00:12:31
Y dentro
00:12:34
Se ha creado el cositas
00:12:36
A las 12.48, no hay truco ni cartón
00:12:38
Son las 12.51, se copió
00:12:40
y le doy al intro y ya hemos terminado
00:12:42
gracias Cris
00:12:48
ahora que vamos a hacer
00:12:50
vamos a intentar que se ejecute la parte del else
00:12:53
para que se ejecute la parte del else
00:12:57
es necesario que no se haga la parte del if
00:12:59
es decir, es necesario que no se cumpla la condición de la línea 13
00:13:01
tendríamos que dar en tanto por ciento a uno
00:13:05
un valor que no exista
00:13:08
Pues si yo ejecuto el programa y quiero copiar jajaja.jpg que no existe, primero me da un mensaje de que ya existe el subdirectorio o el archivo c2.barra backups, esto tiene sentido porque esto lo hago sí o sí, ahora intentamos arreglarlo, y lo que me está diciendo es lo siento pero jajaja.jpg no es un archivo o no existe, error al copiar.
00:13:11
Se está ejecutando esta parte de aquí
00:13:45
¿Vale?
00:13:47
Lo siento, pero el tanto por 101
00:13:48
El jajaja.jpg
00:13:50
Es un archivo que no existe, error al copiar
00:13:51
Y no ha intentado ejecutar este comando
00:13:54
¿Vale?
00:13:56
Vale
00:14:01
Voy a hacer otro ejemplito con números
00:14:02
Y esto va a ser
00:14:08
Aquí
00:14:12
Me copio este
00:14:14
Y este lo voy a llamar
00:14:16
02
00:14:19
if es mayor de edad, ¿vale? Por ejemplo, si es mayor de edad. Este script detecta si el usuario tiene más de 18 años, ¿vale?
00:14:20
Y voy a programarlo de una manera diferente. Nosotros lo que vamos a hacer es ejecutar el script y pasarle por parámetro nuestra edad, que tendremos que meter un número.
00:14:52
Bien, lo que vamos a hacer es apoyarnos en esta parte de aquí para ver si coincide si es mayor o menor o qué pasa.
00:15:01
Por ejemplo, comparar si la edad es mayor o igual a 18.
00:15:12
Podríamos if, tanto por 101, que es donde nos habrá metido la edad
00:15:26
Y mayor o igual es esta, mayor o igual, hay que poner heck
00:15:34
Esto significa mayor o igual
00:15:42
Si es mayor o igual a 18, tabulo, eco, bien, eres mayor de edad
00:15:48
y ponemos else
00:15:59
else
00:16:03
echo o
00:16:04
eres menor
00:16:08
fuera de aquí
00:16:10
como voy a poner tildes, voy a codificar
00:16:13
lo bonito
00:16:18
turco, turco, fuera de aquí
00:16:18
vale
00:16:27
si esto está bien
00:16:35
cuando yo lance el script
00:16:37
si pongo un número que sea
00:16:39
18 o más grande, me dirá
00:16:41
bien, eres mayor de edad, y si no me dirá
00:16:43
oh, eres menor
00:16:45
Voy para acá, estoy empanado
00:16:45
Vale, voy a poner 39, por ejemplo, es una edad muy bonita
00:16:53
Bien, eres mayor de edad, lo ejecuto y ahora le pongo 12
00:16:59
Oh, eres menor, fuera de aquí
00:17:03
Le pongo 18, bien, eres mayor de edad
00:17:05
Le pongo 17, oh, eres menor, fuera de aquí
00:17:08
Le pongo menos 14, oh, eres menor
00:17:12
Si faltan 14 años para que salgas, también eres menor
00:17:18
Como es lógico
00:17:21
Si le pongo
00:17:24
Una ñ
00:17:25
Bien, eres mayor de edad
00:17:27
Se arralla
00:17:29
Si le pongo
00:17:30
Soy mayor
00:17:33
Bien, eres mayor de edad
00:17:34
¿Vale?
00:17:36
Si le pongo 100
00:17:37
También
00:17:38
Incluso estos se pueden combinar
00:17:39
O sea, tú aquí dentro
00:17:43
Puedes decir
00:17:44
If
00:17:45
Tanto por ciento uno
00:17:48
Es
00:17:50
Mayores
00:17:52
GTR
00:17:55
Si tanto por ciento uno
00:17:58
GTR, imagínate
00:18:00
40
00:18:02
Podrías decir, eco
00:18:05
Oh, eres un yayo
00:18:11
Y si no
00:18:14
Eco
00:18:17
Bueno, eres mayor de edad
00:18:20
Pero aún
00:18:24
Eres joven
00:18:25
Esto es unifanidado
00:18:27
Que lo que hace es
00:18:29
Uy, perdón
00:18:30
Si resulta que el usuario nos pasa una edad que sea mayor o igual a 18, entra aquí.
00:18:35
Esto lo quito.
00:18:41
Bueno, espera, lo voy a comentar.
00:18:43
Y ahora dice, si además resulta que aparte de ser mayor de 18 eres mayor de 40, pues le dices, oh, eres un yayo.
00:18:45
Y si no, dices, bueno, eres mayor de edad pero eres un joven.
00:18:53
Si se va por aquí, si se va por la línea 13, significa que tiene más de 18 pero menos de 40.
00:18:56
Y si se va por la parte de aquí
00:19:04
Sabes que tienes menos de 18
00:19:07
O sea, como mucho tienes 17
00:19:09
Voy a probarlo
00:19:11
Voy a decirle que tengo 39
00:19:13
Bueno, eres mayor de edad pero aún eres joven
00:19:16
Ahora voy a decirle que el 9 de febrero que cumplo 40
00:19:19
Este script me diría
00:19:22
Eres mayor de edad pero aún eres joven
00:19:23
Pero el año que viene
00:19:25
Me dirá, oh, eres un yayo
00:19:26
Así podéis comprobar no solamente dentro de dos valores
00:19:28
Sino dentro de uno de ellos
00:19:33
Más cosas y así anidar
00:19:35
Hasta el infinito
00:19:36
Y entonces te da depresión
00:19:38
Claro
00:19:40
Te vas al médico de la becera, pides una baja
00:19:41
Y vas al psicólogo
00:19:44
Tomas ansiolíticos y demás
00:19:47
Eh, no me no
00:19:49
Te lees un libro de autoayuda y pa'lante
00:19:51
Si 40 es la mejor edad, hombre
00:19:52
Es la mejor edad
00:19:54
Vale, dudas hasta aquí
00:19:56
Si pones 60 años, pues nada, como es mayor de 40
00:19:58
Pues se va por aquí y te dice que eres un yayo
00:20:08
De 41 al infinito ya eres un yayo
00:20:10
Según este script
00:20:12
Es un ejemplo, ¿vale?
00:20:13
Tampoco lo tengáis en cuenta por literal
00:20:15
Vale, pues entonces, ¿qué es lo que quiero que hagáis?
00:20:17
Lo que vais a hacer vosotros va a ser la actividad 2
00:20:19
La actividad 2
00:20:22
Que está publicada en el aula virtual
00:20:23
Es esta
00:20:25
MS2 fichero por lotes 2
00:20:28
Esta, esta aquí
00:20:30
Esta
00:20:32
Cuando tú la abras
00:20:32
Tiene explicaciones previas
00:20:35
Tiene explicaciones y luego ya te pone el ejercicio
00:20:36
Yo os voy a subir
00:20:39
Os voy a subir, no, os he subido ya
00:20:40
De hecho
00:20:42
Lo de poner un if dentro de un if
00:20:43
Tiene pinta de liar, al principio sí
00:20:48
Os lo he puesto de ejemplo un poco
00:20:50
Por rizar el rizo
00:20:52
Notepad++
00:20:53
Respondiendo a tu pregunta
00:20:57
Se puede utilizar
00:20:59
Si te vas a la opción de lenguaje
00:21:00
Language, puedes hacer
00:21:02
Código de todo
00:21:04
Lo que viene aquí
00:21:06
Que quieres hacerlo de HTML, te vas a la H
00:21:07
lo pones en html
00:21:10
espera, me voy a abrir uno nuevo
00:21:11
te vas a la h, lo pones en html
00:21:13
y ya disfrutas, tú pones aquí html
00:21:17
y te lo colorea
00:21:20
barra html
00:21:21
aquí pones
00:21:22
geath
00:21:25
barra geath
00:21:27
y si aquí pones
00:21:29
body
00:21:31
barra body
00:21:39
y puedes
00:21:41
programar en html
00:21:46
¿Vale? En Javascript te vas a la J
00:21:48
Javascript
00:21:51
Y te lo colorea para Javascript
00:21:53
Me abro aquí otro
00:21:55
Y digo que va a ser Javascript
00:21:56
Y ya pones
00:21:59
Funcion
00:22:01
Ejemplo
00:22:02
Bar
00:22:04
Cositas
00:22:09
Cositas, igual, prompt
00:22:10
Y escribes, ¿vale?
00:22:15
Ah, bueno, era un ejemplo, si, era para que veas
00:22:21
Te estoy poniendo aquí etiquetas que existen en HTML
00:22:22
para ver que te las colorea, si en vez de HTML digo que sea Lisp, pues no me lo colorea, ¿vale?
00:22:24
Sí, HTML, o sea, Notepad++ vale para todos los lenguajes de programación que te vengan por aquí.
00:22:34
Bien, en el enunciado vosotros vais a poner variables, la explicación de lo que es una variable,
00:22:42
aquí una chuletilla, un truquillo del Notepad++ por si os ayuda, y luego un ejemplo.
00:22:49
este ejemplo lo que quiero es que cojáis este código lo paséis vosotros a el hotepad++ y lo
00:22:55
ejecutéis y lo probéis lo interpretéis vale es para que vosotros guardéis vuestras propias cadenas
00:23:03
en variables y para pedir al usuario cosas por teclado a ver un segundo que le dé la pausa
00:23:10
- Idioma/s:
- Autor/es:
- Antonio Ortega Manchón
- Subido por:
- Antonio O.
- Licencia:
- Reconocimiento - Compartir igual
- Visualizaciones:
- 192
- Fecha:
- 19 de enero de 2021 - 17:01
- Visibilidad:
- Público
- Centro:
- IES VILLAVERDE
- Duración:
- 23′ 18″
- Relación de aspecto:
- 2.06:1
- Resolución:
- 1992x966 píxeles
- Tamaño:
- 98.51 MBytes
Para publicar comentarios debes entrar con tu nombre de usuario de EducaMadrid.
Comentarios
Este vídeo todavía no tiene comentarios. Sé el primero en comentar.