Practica 2 Scripts

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA

FACULTAD DE INGENIERÍA (UNIDAD MEXICALI)


DOCUMENTO DEL SISTEMA DE CALIDAD
Formato para prácticas de laboratorio
PLAN DE CLAVE NOMBRE DE LA
CARRERA
ESTUDIO ASIGNATURA ASIGNATURA
Lic. En Sistemas Taller de Sistemas
2009-2 11978
Computacionales. Operativos
PRÁCTICA LABORATORIO Lic. en Sistemas DURACIÓN
NO. DE Computacionales (HORA)
NOMBRE DE LA
2 Scripts 2
PRÁCTICA
1. INTRODUCCIÓN
El shell es un intérprete de órdenes. Los intérpretes de órdenes de UNIX son
auténticos lenguajes de programación. Por lo tanto tienen sentencias de control de
flujo, sentencias de asignación, funciones, etc. Los programas de shell no necesitan
ser compilador. El propio shell los interpreta. A estos programas se les conoce como
shell scripts.

2. OBJETIVO (COMPETENCIA)
El alumno aprenderá a utilizar diferentes comandos de shell para realizar pequeños y
rápidos programas de aplicación.

3. FUNDAMENTO
Forma de escribir un programa de shell.
1.- Crear un archivo de texto con un editor. Este archivo contendrá las órdenes
que el shell va a interpretar y a ejecutar.
2.- Dar al archivo el atributo de ejecución con chmod.
3.- Ejecutar el programa escribiendo desde la línea de comandos
./nombredelscript

Para generar los scripts se puede utilizar el editor vi.

Ejemplo 1
Crear el archivo shell_script con vi y teclear lo siguiente:

########################
# Primer shell script #
########################
who
date

Cambiar el atributo de shell_script para poderlo ejecutar de la siguiente manera:


$ chmod +x shell_script

Una vez cambiados los derechos, ejecutar el primer script tecleando


$ ./shell_script
¿Cuál fue la salida?

Ejemplo 2:
El nombre del segundo script será shell_paramet
Los programas de shell pueden recibir parámetros desde la línea de comandos.
Estos parámetros se llaman de posición y para saber su valor se utiliza el
símbolo $.
$0 Representa al parámetro cero o nombre del programa.
$1 Representa al parámetro 1.
.
.
$9 Representa al parámetro 9
########################
# Parametros #
########################
echo Parámetro 0= $0
echo Parámetro 1= $1
echo Parámetro 2= $2
echo Parámetro 3= $3

Después de cambiar los derechos, ejecutar el script de la siguiente manera:


$ ./shell_paramet uno dos tres
¿ Cuál fue la salida?

Ejemplo 3:
Existen algunas variables con significado especial como:
# Guarda el número de argumentos de la línea de órdenes (excluyendo el nombre
del programa).
* Guarda la cadena de argumentos enteras (excluyendo el nombre del programa).
? Guarda el código de retorno de la última orden( 0 si no hay error y 1 si hay
error)-
El nombre del tercer script será sh_var

########################
# Visualiza #, * y ? #
########################
echo La variable \# vale: $#
echo La variable \* vale: $*
cp
echo La variable \? vale: $?

Después de cambiar los derechos, ejecutar el script de la siguiente manera:


$ ./sh_var uno dos tres cuatro
¿ Cuál fue la salida?

Ejemplo 4:
La orden read se usa para leer información escrita en el terminal. Si hay
más variables en la orden read que palabras escritas, las variables que sobran
por la derecha se asignan a NULL. Si se introducen más palabras que variables
haya, todos los datos sobrantes por la derecha se asignan a la última variable de
la lista.
El nombre del cuarto script será sh_read

########################
# Orden read #
########################
echo –n “Introduce una variable:”
read var
echo La variable introducida es:$var
Después de cambiar los derechos, ejecutar el script de la siguiente manera:
$ ./sh_read
¿ Cuál fue la salida?

Ejemplo 5:
El nombre del quinto script será sh_read_var

##########################
#Lee varias variables con read #
##########################
echo –n “Introduce las variables:”
read var1 var2 var3
echo La variables introducidas son:
echo var1=$var1
echo var2=$var2
echo var3=$var3

Después de cambiar los derechos, ejecutar el script de la siguientes 3 maneras:


a) $ ./sh_read _var Dar tres valores ¿ Cuál fue la salida?

b) $ ./sh_read _var Dar 2 valores ¿ Cuál fue la salida?

c) $ ./sh_read _var Dar cuatro valores Cuál fue la salida?

while
Sintaxis: while condición
do
orden(es)
done
 Se evalúa la condición
 Si el código devuelto por la condición en 0 (verdadero), se ejecuta la
orden u órdenes y se vuelve a iterar.
 Si el código de retorno de la condición es falso, se salta a la primera
orden que haya después de la palabra reservada done.

until
Sintaxis: until condición
do
orden(es)
done
 Se evalúa la condición.
 Si el código de retorno de la condición es distinto de 0(falso), se ejecuta la
orden u órdenes y se vuelve a iterar.
 Si el código devuelto por la condición e 0(verdadero), se salta a la primera
orden que haya después de la palabra clave done.

Donde las condiciones pueden ser para evaluaciones numéricas:


[ $variable –lt 20 ] Variable menor a 20
[ $variable –le 20 ] Variable menor o igual que 20
[ $variable –gt 20 ] Variable mayor que 20
[ $variable –ge 20 ] Variable mayor o igual que 20
[ $variable –eq 20 ] Variable igual que 20
[ $variable –ne 20 ] Variable no igual a 20

Condiciones para evaluación de cadenas:


[ “$var” = “adios” ] Variable igual a “adios”
[ “$var” != “adios” ] Variable diferente a “adios”

case
Sintaxis: case palabra in
Patrón_1) orden_1;;
Patrón_2) orden_2;;
Patrón_N) orden_N;;
esac

Ejemplo 6:
echo –n “Selecciona el dia del menu”
read var3
case $var in
Lunes) echo el lunes hay hamburguesas;;
Martes) echo el martes hay tostadas;;
Miercoles) echo el miércoles hay sopes;;
esac

Ejemplo 7 operaciones matemáticas.

###############################
#programa que multiplica
echo –n
read arg1
read arg2
resultado=`expr $arg1 \* $arg2`
echo resultado=$resultado

-Cuando escribimos scripts, es permitido realizar operaciones aritméticas


utilizando:

expr: Sintaxis: expr arg1 op arg2 [op arg3…]


Los argumentos de la orden expr se toman como expresiones y deber ir
separados por blancos. Evalúa sus argumentos y escribe el resultado en la salida
estándar. El uso más común de la orden expr es para operaciones de aritmética
y, en menor medida para manipular cadenas.

Operadores matemáticos:
+ Suma arg2 a arg1
- Resta arg2 a arg1
* Multiplica los argumentos.
/ Divide arg1 entre arg2 (división entera)
% Resto de la división entera entre arg1 y arg2.
No hay que olvidar que el símbolo *, tiene un significado especial para el shell,
por lo que debe ser precedido por el símbolo / o encerrado entre comillas simples.

if Sintaxis:
if condicion
then
: orden(es)
else
orden(es)
fi

Ejemplo:
clear
var=1
linea=2
while [ $var -le 5 ]
do
tput cup $linea 20
read nombre
tput cup $linea 40
read apellido
tput cup $linea 50
echo $apellido" "$nombre
var=`expr $var + 1`
linea=`expr $ linea + 1`
done

4. PROCEDIMIENTO (DESCRIPCIÓN)
A. EQUIPO NECESARIO MATERIAL DE APOYO
Computadoras con salida vía Telnet Práctica impresa
B. DESARROLLO DE LA PRÁCTICA
Copie y ejecute los scripts que vienen en la práctica y realice los que a
continuación se explican.
1.- Realizar un script en donde pida su nombre y su edad. Posteriormente
se escribirá el nombre la cantidad de veces de su edad.
2.- Pedir un rango de números a imprimir. Posteriormente calcular el acumulado
de los pares e impares

-C. CÁLCULOS Y REPORTE

5. RESULTADOS Y CONCLUSIONES
Al finalizar la práctica el alumno será capaz de realizar scripts con los comandos
básicos.
6. ANEXOS

7.- REFERENCIAS

Formuló Revisó Aprobó Autorizó


Ing. Claudia Mijarez Díaz
Maestro

Formato Electrónico elaborado por: M.C. Cecilia M. Curlango Rosas en Agosto de 2003.

También podría gustarte