Está en la página 1de 21

Programacin del Shell Prcticas Fundamentos de Informtica I

Shell

Programa que se ejecuta al iniciar una sesin en un sistema operativo tipo UNIX Funciona como un lenguaje de programacin Permite crear programas

Ejecucin procedimiento shell

Entramos en la consola del sistema

Aplicaciones -> Accesorios -> Terminal

Tenemos tres modos de ejecucin


sh nombre_del_programa_shell Activacin del permiso de ejecucin

Comando chmod

. nombre_del_programa_shell (punto espacio seguido del nombre del proceso)

Ejemplo 1

Generamos el programa hola mundo

Abrimos el editor de texto (gedit)


Escribimos la sentencia

echo hola mundo

Guardamos y ejecutamos el programa de las tres maneras indicadas

Variables

Existen dos tipos

Variables de entorno

Variables definidas por el SO o por el usuario


Asignacin: nombre de variable=valor Uso de la variable: se usa el smbolo $ precediendo a la variable color=rojo echo $color Si uso la variable dentro de una cadena de caracteres puedo diferenciarla: Usando comillas dobles Usando llaves palabra1=ante palabra=${palabra1}ojos Echo $palabra

Variables (II)

Pueden contener varias palabras

colores=rojo verde azul


comando=chmod 777 $comando nombre_fichero

Se puede asignar la salida de un comando


directorio=`date` echo $directorio

Variables (III)

Segundo tipo de variables

Argumentos del programa

Se aaden a la derecha del programa invocado


$0 es el nombre del programa $1 primer argumento $2 segundo argumento

Existe un lmite de 9 argumentos, pero en realidad puede tomar tantos como queramos

Orden shift permite movernos por ellos

$* todos los argumentos $# nmero de argumentos tomados

Comandos

echo Ejecucin condicional con if


if condicion then

Comandos a ejecutar

fi

Comandos

Ejecucin condicional con if, uso del else

if condicion
then

Comandos a ejecutar

else

Comandos a ejecutar

fi

Introduccin de condiciones

Orden test

Valores numricos

test valor1 <comparacion> valor2


-eq -ne -gt -lt -ge -le

= > <

Introduccin de condiciones (II)

Orden test

Ficheros

test <directiva> fichero


-s -d -f -w -r

fichero existe fichero es directorio fichero es un fichero se puede escribir puede estar vaco

Introduccin de condiciones (III)

Orden test

Cadena de caracteres

test cadena1 <comparacion> cadena2


= !=

cadenas iguales cadenas diferentes

Sentencia elif

if condicion

then

Comandos a ejecutar

elif condicion

Comandos a ejecutar

fi

Sentencia case

Case variable in

opcion_1)
opcion_2) *) esac

ordenes;;
ordenes;; ordenes;; //opcional

Sentencia for

for variable in conjunto_de_valores

do

Conjunto de ordenes

done

Sentencia while

while condicin

do

Grupo de ordenes

done

Sentencia until

until condicin

do

Grupo de ordenes

done

Comentarios

Carcter #

Ejecutar expresiones aritmticas

expr expresion aritmtica

Operadores vlidos

+ * se debe usar como \* * o '*' para diferenciarlo del metacaracter / %

Toma de datos

Sentencia read

read nombre de la variable a tomar

ejercicios

Realizados en clase

También podría gustarte