Saltar navegación

Activa JavaScript para disfrutar de los vídeos de la Mediateca.

Programación BAT-EMPLEO DE CONDICIONAL IF - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 19 de enero de 2021 por Antonio O.

192 visualizaciones

Explico a mis alumnos de FP Básica el empleo del condicional IF en programación BAT para Windows

Descargar la transcripción

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
if existe 00:04:11
archivo.bat 00:04:15
vale 00:04:17
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
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
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
Tanto por ciento uno 00:17:48
Mayores 00:17:52
GTR 00:17:55
Si tanto por ciento uno 00:17:58
GTR, imagínate 00:18:00
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:
es
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

Del mismo autor…

Ver más del mismo autor

Comentarios

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.



EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid