Está en la página 1de 14

Curso Sistema Operativo Linux

Taller de Sistemas
Operativos

DM15

Grupo A

Gasca Palacio Jesus Fernando


Mtro.: Cerca Vázquez Juan Ignacio

Ing. Sistemas Computacionales

Núm. control 20030606


Curso Sistema Operativo Linux

Práctica: Scripts en línea de comandos (Shell)


La programación o dicho de otra manera la creación de scripts en terminal de linux, es una potente
herramienta para sincronizar, organizar y preparar desde pequeñas recetas de comandos, hasta
incluso Algoritmos o Mecanismos más complejos. Identificando que tareas repetitivas pueden ser
agrupadas por sus características. A este tipo de administración de trabajos suele identificárseles
como scripts en Shell,

Definición de script
Es un conjunto de instrucciones secuenciadas y organizadas para ser ejecutadas por lotes, es
decir individualmente una detrás de la otra, dichas instrucciones se constituyen de comandos de
terminal. Concluyendo: Un script es un archivo que contiene una secuencia de comandos que son
ejecutados como una línea de tareas, desde el primero hasta el último.

Creando un Shell script


1.- La primera acción a realizar es crear un archivo, que contenga opcionalmente la extensión .sh,
esto no es oblilgatorio pero si es recomendado para poder identificarlos y diferenciarlos a simple
vista.

touch SO_script1.sh

De esta forma creamos un nuevo archivo llamado SO_script1.sh en el directorio en el que nos
encontramos actualmente.

2.- Abrir el archivo un editor de texto como vi o nano, o en su defecto en el entorno gráfico ( gedit )

vi SO_script1.sh ó nano SO_script1.sh.


Curso Sistema Operativo Linux

Cabecera del script


Una vez creado y abierto el archivo se indicará al sistema que el archivo va ser un script. Todos
los scripts deben tener en la primera línea, o encabezado de esta manera

#! /bin/bash

La sintaxis de esta línea se divide en dos partes, la primera es #!. A estos caracteres se les
denomina como sha bang y que su propósito es indicar al sistema que lo que viene a continuación
es un script de comandos, para que este las procese como tal, se separa con un espacio y viene la
segunda parte con la trayectoria /bin/bash indica el shell que va a utilizar el script para ejecutar los
comandos.

Desarrollo del script


Añadiendo comandos
En un script podemos utilizar la gran mayoría de los comandos que se han visto hasta el momento,
Además de estos comandos podemos utilizar muchas otras herramientas como operadores
aritméticos, comparadores, estructuras condicionales… entre otros.

Retomando el editor Abierto con el archivo SO_script1.sh


Curso Sistema Operativo Linux

Coloquemos las instrucciones para que se vea de la siguiente manera:

#! /bin/bash
# Las instrucciones en las que se inicia con # son comentarios
echo "***********************"
echo "*Curso de Linux en SO*"
echo "***********************"
echo "Iniciando...."

Una vez que las 6 líneas fueron introducidas ejecutamos el comando para guardar y salir del editor

Ejecución del script.


El archivo que hemos creado debemos asegurarnos de que posea los permisos de ejecución
correspondientes, ubicándonos en la trayectoria donde se encuentra el archivo aplicamos el
comando chmod para implementar los permisos de ejecución, podemos hacerlo del modo
simbólico o del modo numérico:

Chmod +x SO_script1.sh (simbólico) ó chmod 777 SO_script1.sh (numérico)

Ejecutamos el script con:

./ SO_script1.sh

Donde el comando ./ permite la ejecución de scripts que se encuentren identificados por la primera
línea o cabecera #! /bin/bash
Curso Sistema Operativo Linux

Edición del script


Una vez que hemos ejecutado y validado la correcta ejecución del script si queremos agregar mas
instrucciones poseemos múltiples alternativas para realizarlo:

Actividad: agregar una línea al script de cada forma vista

Nota: en caso de fallar algún comando nos avisará marcando el error correspondiente pero esto no
detendrá la ejecución del script hasta que todo esté recorrido.

Forma 1 Utilizando comando Echo

1.- Echo echo “estoy agregando una línea mas a mi script con echo” >> SO_script1.sh

2.- Echo pwd ” >> SO_script1.sh

3.- Agrega una línea propia con un comando distinto…

4.- Probamos con: ./ SO_script1.sh

Forma 2 Utilizando vi

1.- vi SO_script.sh, Esc + a para ingresar al modo texto

2.- ir al final y agregar echo “una línea más ahora con vi”

3.- Agrega una línea propia con un comando distinto…


Curso Sistema Operativo Linux

4.- Esc : wq para guardar los cambios

5.- Probamos con: ./ SO_script1.sh

Programación del script

Crearemos un nuevo archivo con nombre programa.sh con el propósito de comenzar de nuevo el
archivo deberá verse de la siguiente manera:

#! /bin/bash
echo "Bienvenidos"
echo "----- Programa que mostrará tras 5 segundos el directorio actual--"
sleep 5s
clear
ls –l
echo "veamos que hay por ahí oculto"
sleep 5s
ls -lap
echo "por último te muestro la fecha de hoy”
date

En este programa ya hemos incorporado algunos comandos como clear, sleep 5s que hará una
pequeña pausa de 5 segundos mostramos los archivos posteriormente y luego el comando de los
ocultos.
Curso Sistema Operativo Linux

Guardamos el archivo y le damos los permisos con:

chmod +x programa.sh

Probamos con

./ programa.sh
Curso Sistema Operativo Linux

Programación del script

Crearemos un nuevo archivo con nombre programa2.sh con el propósito de comenzar de nuevo el
archivo deberá verse de la siguiente manera:

#! /bin/bash
echo "Bienvenidos"
echo "-Programa que crea archivos y carpetas--"
Curso Sistema Operativo Linux

sleep 8s
touch texto1.txt
touch texto2.txt
mkdir textos
cp texto* textos
echo "Los archivos han sido copiados, los muestro y en colores"
cd textos
ls -l

Este programa ya crea archivos y carpetas, podemos ver el uso de comandos sencillos como touch
y mkdir, incluso copiando los archivos al directorio de reciente creación, posteriormente muestra el
trabajo realizado.

Guardamos el archivo y le damos los permisos con:

chmod +x programa2.sh

Probamos con

./ programa2.sh
Curso Sistema Operativo Linux

Programación del script

Crearemos un nuevo archivo con nombre programa3.sh con el propósito de comenzar un nuevo
archivo deberá verse de la siguiente manera:

#! /bin/bash
echo "Bienvenidos"
echo "-Programa que construye operaciones--"
sleep 5
clear
echo "Menú de Operaciones Matemáticas"
read -p "Ingresa el primer valor " val1
read -p "ingresa el operador bien sea + - / o * " opr
read -p "Ingresa el segundo valor " val2
echo "Estamos procesando"
sleep 2
res=$(echo "$val1$opr$val2" | bc -l)
echo $res

Este programa construye una expresión aritmética, y la resuelve aquí incorporamos el uso de
variables y del comando read, donde una vez que se van leyendo los valores, y la operación, se
obtiene el resultado correspondiente y muestra el resultado, al hablar de:

$val1, $val2 y $opr son variables que pueden contener valores o símbolos
Curso Sistema Operativo Linux

La línea res obtiene el resultado enviando a pantalla con el comando echo con el parámetro bc –l,
el resultado de dicha expresión

Entonces en este programa ya involucramos el uso de variables es decir campos donde se


guardará información de manera interactiva con el usuario.

Guardamos el archivo y le damos los permisos con:

chmod +x programa3.sh

Probamos con

./ programa2.sh
Curso Sistema Operativo Linux

Ejercicio Práctica

Respaldo.sh

Actividad: Elaborar el siguiente script, puede ir haciéndose por partes

1.- Crear un script que dé un mensaje de bienvenida, tras 20 segundos limpie la pantalla, muestre
el directorio actual,

2.- posteriormente crear 5 archivos:

Archivo1

Archivo2

Archivo3

Archivo4

Archivo5

3.- Una vez creados, Crearemos una carpeta llamada archivos

4.- Copiar los 5 archivos a la carpeta archivos

5.- Mandar un mensaje informando lo que se acaba de realizar

6.- Esperar 10 segundos

7.- Enviar un mensaje “iniciando el respaldo….”

8.- Crear un archivo tar llamado respaldo.tar donde enviaremos la carpeta archivos una vez que ya
contenga los 5 archivos
Curso Sistema Operativo Linux

9.- Enviar el archivo comprimido a Documents

10 .- Enviar mensaje echo indicando que el respaldo está casi listo solo falta borrar los archivos

11.- Borrar el contenido de la carpeta archivos

12.- Eliminar la carpeta archivos

13.- Enviar un mensaje de despedida


Curso Sistema Operativo Linux

También podría gustarte