0% encontró este documento útil (0 votos)
47 vistas

Lab 15 - Programacion de Shell Scripts 2023

Este documento presenta un laboratorio sobre programación de shell scripts en Linux. Contiene ejemplos de uso de variables, parámetros, condicionales e iteraciones en scripts. Se proponen una serie de ejercicios prácticos para crear y ejecutar scripts sencillos.

Cargado por

Swowfhjl D:
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
47 vistas

Lab 15 - Programacion de Shell Scripts 2023

Este documento presenta un laboratorio sobre programación de shell scripts en Linux. Contiene ejemplos de uso de variables, parámetros, condicionales e iteraciones en scripts. Se proponen una serie de ejercicios prácticos para crear y ejecutar scripts sencillos.

Cargado por

Swowfhjl D:
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 45

SISTEMAS OPERATIVOS

LABORATORIO N° 15

Programación de Shell Scripts en Linux

CODIGO DEL CURSO: II3010

Cuba Moriano, Maria Fernanda


Alumno(s): Nota
Urquizo Apaza, Josue Alessandro

Grupo: WorkBot-WB Ciclo: III

DISEÑO DE SOFTWARE E INTEGRACIÓN DE SISTEMAS


PROGRAMA DE FORMACIÓN REGULAR
Sistemas Operativos

LABORATORIO N°15 – Programación de Shell Scripts en Linux


I. Objetivos:
• Identificar el funcionamiento de los shell script.
• Desarrollar scripts básicos.
• Utilizar parámetros y variables.
• Emplear estructuras básicas de programación.
• Incluir interactividad en los scripts.
• Definir menús en los scripts.

II. Seguridad:
• Ubicar maletines y/o mochilas en el gabinete al final de aula de laboratorio o en los
casilleros asignados al estudiante.
• No ingresar con líquidos, ni comida al aula de laboratorio.
• Al culminar la sesión de laboratorio apagar correctamente la computadora y la pantalla,
y ordenar las sillas utilizadas.

III. Equipos y Materiales:


• El desarrollo del laboratorio es grupal
• En este laboratorio cada alumno trabajará con computadoras, monitores y teclado.

Guía de Laboratorio Pág. 2


Sistemas Operativos

IV. Procedimiento:

1. Abra el VMware Workstation.

2. Encienda la máquina virtual de Linux Centos del laboratorio 12, que venimos usando en clases.

3. Inicie Sesión con usuario root

4. Realice el laboratorio con el usuario root

VARIABLES Y ARGUMENTOS (PARÁMETROS)

1. Cree el directorio /root/scripts y ubíquese en él. En este directorio se definirán los scripts de este
laboratorio,

Entregable 1: coloque los comandos usados y la captura con la carpeta creada:

2. Cree un script y ejecútelo para comprobar el valor de las variables del sistema:
• Cree el archivo de texto varSistema con el siguiente código:
echo “Directorio hogar = $HOME”
echo “Shell = $SHELL”

Guía de Laboratorio Pág. 3


Sistemas Operativos

echo “Usuario actual = $LOGNAME”

Entregable 2: Adjunte la captura con el archivo script creado y mostrando el contenido:

Guía de Laboratorio Pág. 4


Sistemas Operativos

• Establezca el atributo de ejecución al archivo de texto anterior para convertirlo en un script y


luego ejecútelo:

Guía de Laboratorio Pág. 5


Sistemas Operativos

Entregable 3: Adjunte la captura con los permisos modificados y otra con el script ejecutado:

• NOTA: Las variables del sistema tienen permanentemente un valor asociado.

3. Cree un script y ejecútelo para comprobar el funcionamiento de variables de usuario, así como
el uso de los delimitadores de texto:
• Cree el archivo de texto varUsuario con el siguiente código:
a=’$LOGNAME’
b=”$LOGNAME”
c=`date`
echo “$a”
echo “$b”
echo “$c”

Entregable 4: Adjunte la captura con el archivo script creado y mostrando el contenido:

Guía de Laboratorio Pág. 6


Sistemas Operativos

• Establezca el atributo de ejecución al archivo de texto anterior para convertirlo en un script y


luego ejecútelo:

Guía de Laboratorio Pág. 7


Sistemas Operativos

Guía de Laboratorio Pág. 8


Sistemas Operativos

Entregable 5: Adjunte la captura con los permisos modificados y con el script ejecutado:

• ¿Qué diferencia encuentra entra las comillas (“ ”) y los apóstrofes (‘ ’)?


Cuando utilizamos apóstrofes (' ') en un script de shell, todo lo que esté dentro de los
apóstrofes se tomará de forma literal, es decir, tal como está escrito. Esto significa que no se
realizará ninguna acción especial en el contenido entre los apóstrofes.

Cuando utilizamos comillas dobles (" ") en un script de shell, lo que está dentro de las
comillas se interpreta de forma especial. Las variables y los comandos entre comillas se
expanden, lo que significa que se reemplazan por sus valores correspondientes.

• ¿Para qué sirven los apóstrofes invertidos (` `)? Ingrese evidencias.


Los apóstrofes invertidos ( ) se utilizan para realizar la expansión de comandos en un script
de shell. Cuando se encierra un comando entre apóstrofes invertidos, ese comando se
ejecuta y se reemplaza en el script por la salida que produce.

Guía de Laboratorio Pág. 9


Sistemas Operativos

Guía de Laboratorio Pág. 10


Sistemas Operativos

En el ejemplo usamos el comando `date`, el cual se ejecuta y su salida se asigna a la variable


$a. Luego, se muestra el valor de la variable $a, que es la fecha y hora actual.

CONDICIONES EN LOS SCRIPTS

4. Cree un script que permita calcular un promedio de notas (nota mínima 13).
• Cree el archivo de texto calcularPromedio con el siguiente código:
#!/bin/bash
#Calculando el promedio
clear
echo “Ingresar primera nota:”
read a
echo “Ingresar segunda nota:”
read b
echo “Ingresar tercera nota:”
read c
d=`expr $a + $b + $c`
e=`expr $d “/” 3`
if [ $e –ge 13 ]
then
echo “El alumno está aprobado”
echo “El promedio es $e”
else
echo “El alumno está desaprobado”
echo “El promedio es $e”
fi

Guía de Laboratorio Pág. 11


Sistemas Operativos

Entregable 6: Adjunte la captura con el archivo script creado y mostrando el contenido:

Guía de Laboratorio Pág. 12


Sistemas Operativos

Guía de Laboratorio Pág. 13


Sistemas Operativos

• Establezca el atributo de ejecución al archivo de texto anterior para convertirlo en un script.

Guía de Laboratorio Pág. 14


Sistemas Operativos

Entregable 7: Adjunte la captura con los permisos modificados y con el script ejecutado:

Guía de Laboratorio Pág. 15


Sistemas Operativos

EVALUACIÓN DE EXPRESIONES Y BUCLES EN LOS SCRIPTS

1. Cree un script y ejecútelo para comprobar la evaluación de las expresiones:


• Cree el archivo de texto expresion1 con el siguiente código:
#!/bin/bash
expr $1 + $2
expr $1 - $2
expr $1 “*” $2
expr $1 “/” $2

Entregable 8: Adjunte la captura con el archivo script creado y mostrando el contenido:

Guía de Laboratorio Pág. 16


Sistemas Operativos

Guía de Laboratorio Pág. 17


Sistemas Operativos

• Establezca el atributo de ejecución al archivo de texto anterior para convertirlo en un script y


luego ejecútelo pasándole dos números como argumentos:

Guía de Laboratorio Pág. 18


Sistemas Operativos

Entregable 9: Adjunte la captura con los permisos modificados y con el script ejecutado:

Guía de Laboratorio Pág. 19


Sistemas Operativos

2. Cree un script y ejecútelo para verificar los bucles numéricos:


• Cree el archivo de texto bucle1 con el siguiente código:
cont=1
while [ $cont -le 10 ] ; do
echo $cont
cont=$(($cont+1))
done

Entregable10: Adjunte la captura con el archivo script creado y mostrando el contenido:

Guía de Laboratorio Pág. 20


Sistemas Operativos

Guía de Laboratorio Pág. 21


Sistemas Operativos

• Establezca el atributo de ejecución al archivo de texto anterior para convertirlo en un script y


luego ejecútelo:

Guía de Laboratorio Pág. 22


Sistemas Operativos

Entregable 11: Adjunte la captura con los permisos modificados y con el script ejecutado:

Guía de Laboratorio Pág. 23


Sistemas Operativos

3. Cree un script y ejecútelo para verificar el funcionamiento del for:


• Cree el archivo de texto bucle2 con el siguiente código:
#!/bin/bash
echo “Ingrese la ruta del archivo:”
read a
for archivo in $a;
do
echo “La ruta del archivo es $a”
echo “Las tres primeras líneas del archivo son:”
echo “head -3 $a”
done

Entregable12: Adjunte la captura con el archivo script creado y mostrando el contenido:

Guía de Laboratorio Pág. 24


Sistemas Operativos

Guía de Laboratorio Pág. 25


Sistemas Operativos

• Establezca el atributo de ejecución al archivo de texto anterior para convertirlo en un script y


luego ejecútelo pasando distintos argumentos cada vez. Presentar evidencia

Guía de Laboratorio Pág. 26


Sistemas Operativos

Entregable 13: Adjunte la captura con los permisos modificados y con el script ejecutado:

CREANDO UN PROGRAMA CON LA SENTENCIA CASE


1. Cree un script y ejecútelo para comprobar la evaluación de las expresiones:
• Cree el archivo de texto programa con el siguiente código:
#!/bin/bash
clear
echo “Menú de opciones”
echo “[1]:Fecha y hora del sistema”
echo “[2]:Saber qué usuario está logeado”
echo “[3]:Ruta de dirección actual”
echo “[4]:Nombre del computador”
echo “[5]: Dirección IP del computador”
echo “INGRESAR OPCIÓN POR FAVOR"
read x
case $x in
1)date;;
2)whoami;;
3)pwd;;
4)hostname;;
5)ifconfig ens33;;
*)echo “opción inconrrecta”;;
esac

Guía de Laboratorio Pág. 27


Sistemas Operativos

Entregable14: Adjunte la captura con el archivo script creado y mostrando el contenido:

Guía de Laboratorio Pág. 28


Sistemas Operativos

Guía de Laboratorio Pág. 29


Sistemas Operativos

• Establezca el atributo de ejecución al archivo de texto anterior para convertirlo en un script y


luego ejecútelo. Presentar evidencia.

Guía de Laboratorio Pág. 30


Sistemas Operativos

Entregable 15: Adjunte la captura con los permisos modificados y con el script ejecutado:

Guía de Laboratorio Pág. 31


Sistemas Operativos

Guía de Laboratorio Pág. 32


Sistemas Operativos

Guía de Laboratorio Pág. 33


Sistemas Operativos

En la opción 5 cambie el comando dado por el comando `ip addr show ens33` que utiliza el
comando ip para obtener la dirección IP del adaptador de red ens33.
El problema con el anterior comando fue que, en versiones recientes de Linux, el comando
`ifconfig` ha sido reemplazado por el comando `ip`. Esto significa que el comando `ifconfig`
no se encuentra en mi versión de Linux.

Guía de Laboratorio Pág. 34


Sistemas Operativos

Guía de Laboratorio Pág. 35


Sistemas Operativos

Guía de Laboratorio Pág. 36


Sistemas Operativos

EJERCICIOS PROPUESTOS

1. Sabiendo que el comando date +%k muestra la hora (formato de 24h) y el comando date
+%M muestra los minutos (0-59), desarrolle el script hora que muestre la hora en formato de
12 horas incluyendo AM o PM según corresponda:

Entregable 16: Adjunte la captura con el archivo script creado y mostrando el contenido:

Guía de Laboratorio Pág. 37


Sistemas Operativos

Guía de Laboratorio Pág. 38


Sistemas Operativos

Entregable 17: Adjunte la captura con los permisos modificados y con el script ejecutado:

Guía de Laboratorio Pág. 39


Sistemas Operativos

Guía de Laboratorio Pág. 40


Sistemas Operativos

2. Usando el script programa, cómo haría para que luego de seleccionar una opción, la ejecución
del script no termine, sino que exista una opción que sea “exit” y cuando el usuario la
seleccione recién se cierre la ejecución.

Entregable 18: Adjunte la captura con el archivo script modificado:

Guía de Laboratorio Pág. 41


Sistemas Operativos

Guía de Laboratorio Pág. 42


Sistemas Operativos

Entregable 19: Adjunte la captura con los permisos modificados y con el script ejecutado:

Guía de Laboratorio Pág. 43


Sistemas Operativos

Guía de Laboratorio Pág. 44


Sistemas Operativos

Conclusiones
Indicar las conclusiones que llegó después de los temas tratados de manera práctica en este
laboratorio. (Mínimo 4 conclusiones)

1. La programación de Shell Scripts en Linux te permite automatizar tareas, manipular


archivos, ejecutar comandos del sistema y más.
2. El lenguaje de scripting utilizado en Linux, como Bash, presenta una sintaxis sencilla y
flexible.
3. Los Shell Scripts te permiten automatizar tareas repetitivas o tediosas, lo que ahorra
tiempo y reduce errores.
4. Los Shell Scripts te brindan acceso directo a los comandos y utilidades del sistema
operativo Linux.
5. Los Shell Scripts son altamente compatibles con cualquier versión de Linux.

Guía de Laboratorio Pág. 45

También podría gustarte