Está en la página 1de 16

INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”

CARRERA DE DISEÑO Y MANTENIMIENTO DE REDES

INFORME

FUNDAMENTOS DE LINUX

DATOS GENERALES:

NOMBRES Y APELLIDOS: Gina Maribel Unkuch Marian


DOCENTE: Ing. Paul Campos
1. TEMA
ESTRUCTURAS DE CONTROL.
CONTROL DE ENTRADA Y SALIDA DE DATOS.
OPERACIONES MATEMATICAS.

FECHA DE REALIZACIÓN: 01/02/2020 FECHA DE ENTREGA: 03/02/2020

1
Gina Maribel Unkuch Marian
INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

1. OBJETIVO(S):
1.1. GENERAL

 Estudiar el funcionamiento de las estructuras de control.


 Desarrollar a cada paso los comandos para la entrada/salida de datos
que trabajemos.

1.2. ESPECÍFÍCOS:

 Conocer cuando y como debemos utilizar los comandos de las


estructuras de control.
 Utilizar el control de entrada/salida de datos.
 Practicar y ser útil las operaciones matemáticas.

2. EQUIPOS Y MATERIALES:

 COMPUTADORA
 INTERNET

3. MARCO TEORICO:

ESTRUCTURAS DE CONTROL
La shell tiene un conjunto de estructuras de control, que son muy parecidos a
otros lenguajes de programación. En las siguientes secciones, las sentencias
son las series de comandos para ejecutar cuando, mientras o hasta que se
cumpla la condición.

IF
La sentencia if es muy sencilla, comprueba el resultado de un comando y
después ejecuta condicionalmente un grupo de sentencias (statements):

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

if se suele usar para realizar una pregunta y para tomar posteriormente una
decisión basándose en la respuesta:

Llamamos a este script saludo y nos da la siguiente salida:

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

FOR

Este comando hace bucles a través de varios valores, puede ser cualquier
conjunto de cadenas. Se puede enumerar en el programa o, más comúnmente,
en el resultado de una expansión shell de los nombres de archivo.

Este comando de estructura de control contiene dos sintaxis:

Cuando solamente hay una instrucción, las llaves son opcionales.

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

Copia y ejecuta este script para ver el resultado, no te olvides de darle permiso
de ejecución.

Cómo funciona

Este ejemplo crea la variable semana y le asigna un valor diferente cada vez
alrededor del bucle for. Como la shell considera que todas las variables
contienen cadenas por defecto, es tan válido usar una cadena alfanumérica
como numérica.

Usar un bucle for con expansión de comodín

Se suele usar el bucle for con una expansión shell de los nombres de archivo.
Esto significa usar un comodín para el valor de la cadena y con esto
permitimos a la shell que complete todos los valores en el tiempo de ejecución.

WHILE

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

Como por defecto todos los valores shell se consideran cadenas, el bucle for
es adecuado para serpentear a través de una serie de cadenas, pero no
resulta útil cuando no se sabe de antemano cuántas veces desea ejecutar el
bucle.

Cuando tenga que repetir una secuencia de comandos, y no conozca


previamente el número de veces que deberá ejecutarse, puede usar el bucle
while, que tiene la siguiente sintaxis:

Copia este ejemplo y ejecútalo para ver el resultado.

DO-WHILE

El bucle do es una variación de la sentencia de bucle while. El bucle do ejecuta


la instrucción al menos una vez, después repite la instrucción mientras la
condición siga evaluándose como cierta.

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

Al ejecutar este script obtenemos:

Imprime cada registro de entrada 10 veces. No es un ejemplo muy realista, ya


que un while ordinario podría haber hecho lo mismo.

Haz tus propios experimentos, por ejemplo, una tabla de multiplicar…

BREAK

La sentencia break permite interrumpir el bucle for, while o do–while.

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

Lo ejecutamos…

CONTINUE

La sentencia continue, al igual que break, se usa solamente dentro de un bucle


for, while o do–while. Lo que hace es saltarse todas las sentencias que falten
por ejecutarse dentro del cuerpo del bucle y volver a chequear
automáticamente la condición del bucle. Contrasta con la sentencia break, en
que ésta produce directamente un salto fuera del bucle.

UNTIL
La sentencia until tiene la siguiente sintaxis:

Es muy similar al bucle while, pero con el test de condición invertido. En


otras palabras, el bucle continúa hasta que la condición es verdadera, no
mientras la condición sea verdadera.

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

CASE

La construcción case es un poco más compleja que las que hemos visto
hasta el momento. La sintaxis es:

La construcción case permite comparar los contenidos de una variable con


los patrones de un modo muy sofisticado y luego le permite la ejecución de
diferentes sentencias, dependiendo del patrón comparado. Es mucho más
sencillo que la opción alternativa para comparar muchas condiciones, que
quería usar múltiples sentencias if, else y elif.

Caso I: datos de entrada del usuario

Podemos escribir una nueva versión del script saludo que hace la
comprobación de la entrada del usuario mediante la construcción case que
será un poco más selectivo y comprensivo ante los datos inesperados.

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

Caso II: unión de patrones

La construcción case anterior es mucho más elegante que la versión


múltiple de la sentencia if, pero al unir los patrones, puede obtener una
versión mucho más organizada.

CONTROL DE ENTRADA Y SALIDA DE DATOS EN LINUX

La pantalla

Como ya ha visto, todos los programas curses deben empezar con initscr y
acabar con endwin. Estas son las definiciones de sus archivos de
cabecera:

A la función initscr sólo se la puede llamar una vez cada programa. La


función initscr envía un indicador de la estructura sdtscr si tiene éxito. Si
falla, simplemente muestra un mensaje de diagnóstico y error y hace que el
programa salga.

La función endwin envía OK si tiene éxito y ERR si falla. Puede llamar a


endwin para salir de curses y después puede reanudar la operación curses
llamando a clearok (stdscr, 1) y refresh. De esta manera conseguirá que
curses se olvide eficazmente de la apariencia de la pantalla física,
forzándole a que ejecute una visualización totalmente distinta.

Salidas de pantallas

Existen varias funciones básicas para actualizar la pantalla:

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

Las dos funciones delete son análogos a las dos funciones insert.

Entradas del teclado


Leer el teclado es muy sencillo. Las principales funciones son:

Actúan de un modo similar a sus equivalentes que no pertenecen


a curses, getchar, gets y scanf. Tenga en cuenta que getstr proporciona un
modo para limitar la longitud de la cadena enviada, de manera que debería
usarla únicamente con mucha precaución. Si su versión
de curses acepta getnstr, lo cual le permite limitar el número de caracteres
leídos, úselo siempre antes que getstr.
Modos de teclado y entradas
Veamos a continuación un programa de ejemplo, ipmode.c, que muestra como
manejar el teclado.

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

1. Configure el programa y las primeras llamadas curses:

2. Cuando el usuario introduce su contraseña, ha de detener la


contraseña que se transmite mediante eco a la pantalla. Compruebe
después la contraseña con zyzzy:

3. Finalmente, vuelva a permitir el eco del teclado y muestre el éxito o fallo:

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

OPERACIONES MATEMATICAS

Operaciones Aritméticas
En Bash se pueden utilizar las operaciones entre dos variables utilizando los
signos que seguramente ya sabes:

"+": Para sumar valores.


"-": Para restar valores.
"*": Para multiplicar valores.
"/": Para dividir valores.
"%": Para calcular el resto de una división.
Comando let en Bash
Para guardar el valor de una operación dentro de una variable usamos el
comando let. El comando evalúa cada argumento como una expresión
aritmética. La evaluación se hace con enteros de longitud fija, sin revisar
desbordamientos, aunque la división por 0 se captura y se marca como un
error y nos saldrá por la salida de errores "STDERR". Siempre que tengáis
dudas de cómo funciona un comando podéis consultar su funcionamiento
usando el parámetro "--help" al final del comando.

Comando expr en Bash


Muestra el valor de la expresión en la salida estándar "STDOUT". Hay que
dejar un espacio en blanco entre cada argumento / variable para que funcione
el comando.

Veamos a continuación un script de ejemplo de las distintas maneras de operar


en Bash:

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

Cálculos en Bash
La lógica de Bash
Para el terminal, los caracteres que tienen un significado lógico en la
comparación o evaluación de operaciones aritméticas y de archivos son:

Evaluación de operaciones aritméticas


"-lt": Menor que
"-le": Menor o igual que
"-eq": Igual que
"-ge": Mayor o igual que
"-gt": Mayor que
"-ne": Distinto que
Un ejemplo de evaluación de operaciones:

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

Evaluación de archivos
">": Mayor que.
"<": Menor que.
">=": Mayor o igual que.
"<=": Menor o igual que.
"!": Diferente que.
"||": O una cosa o la otra.
"&&": Y esto y lo otro.
Con esto terminamos las "Operaciones Aritméticas y la Lógica en Bash".

4. CONCLUSIONES Y RECOMENDACIONES:

Conclusiones

 En conclusión, podemos decir que las estructuras de control son de gran


ayuda al momento de solucionar problemas informáticos ya que con su
facilidad de inter-prestación y de manejo al momento de utilizarlas en los
pseudocódigos nos ahora tiempo y espacio.

 Una impresionante aplicación para realizar operaciones matemáticas en


Linux, incluyendo operaciones con unidades, números reales e imaginarios,
operaciones con matrices, e incluso con las características de los elementos
de la tabla periódica.

Recomendaciones

 Se recomienda al momento de seleccionar una estructura de control. Para


ejecutar un grupo de sentencias mientras exista una condición se debe
utilizarla estructura:
 (Do-While) Para ejecutar un grupo de sentencias hasta que exista
una condición se debe utilizarla estructura:
 (Do-Until) Para ejecutar un grupo de sentencias un número
determinado de veces se debe utilizar la estructura: (For-Next).

 Además, para realizar programas como ejercicio donde pidas datos que se
almacenen en distintos tipos de variables para que puedas tener una mejor
idea y domines en poco tiempo cómo utilizar las cadenas de control

Gina Maribel Unkuch Marian


INSTITUTO SUPERIOR TECNOLÓGICO “JUAN DE VELASCO”
Av. Chimborazo 11-56 y Cuba
Telf: 2942 077

5. WEBGRAFÍA:

 https://baulderasec.wordpress.com/programacion/programacion-con-linux/2-
programacion-shell/2-3-3-sintaxis-shell/2-3-3-3-estructuras-de-control/

 https://baulderasec.wordpress.com/desde-la-consola/shell-en-unixlinux-sh-
ksh-bash/8-el-lenguaje-de-programacion-awk/8-6-estructuras-de-control/

 https://blog.carreralinux.com.ar/2017/01/calculos-en-bash-matematica/

 https://baulderasec.wordpress.com/programacion/programacion-con-linux/6-
gestion-de-pantallas-de-texto-con-curses/el-control-basico-de-entradas-y-
salidas/

 https://blog.carreralinux.com.ar/2017/01/calculos-en-bash-matematica/

6. ANEXOS:

Gina Maribel Unkuch Marian

También podría gustarte