Programacion en Bash basica suse server

9
INSTITUTO TECNOLOGICO DE COLIMA Docente : M.C. JORGE GUADALUPE CASTELLANOS MORFIN Carlos Hugo Sandoval Nuñez Jose Heriberto Perez Magaña Programación en Bash

description

El shell es un intérprete de órdenes, pero el shell no es solamente eso; los intérpretes de órdenes de Linux son auténticos lenguajes de programación. Como tales, incorporan sentencias de control de flujo, sentencias de asignación,funciones, etc.

Transcript of Programacion en Bash basica suse server

Page 1: Programacion en Bash basica suse server

INSTITUTO TECNOLOGICO DE COLIMA

Docente : M.C. JORGE GUADALUPE CASTELLANOS MORFIN

Carlos Hugo Sandoval NuñezJose Heriberto Perez Magaña

Programación en Bash

Page 2: Programacion en Bash basica suse server

PROGRAMACION BASH

El shell es un intérprete de órdenes, pero el shell no es so-lamente eso; los intérpretes de órdenes de Linux son au-ténticos lenguajes de programación. Como tales, incorpo-ran sentencias de control de flujo, sentencias de asignación, funciones, etc.Los programas de shell no necesitan ser compilados como ocurre en otros lenguajes. En este caso, el propio shell los ejecuta línea a línea. A estos programas se les conoce con el nombre de shell scripts y son los equivalentes a los archivos por lotes de otros sistemas operativos.

EMPECEMOS CON LA PROGRAMACION• Crear un archivo de texto con el editor vi . Este archivo contendrá las órdenes que el shell va a ir interpretando y ejecutando.• Asignar permisos de ejecución al archivo creado, utilizan-do la orden chmod.

Ejemplo chmod 700 archivo Con lo anterior asignaremos permisos de ejecución a nues-tro archivo

Una vez que lo ponemos con permisos de ejecución lo eje-cutaremos de la siguiente maneraNos posicionamos en el directorio donde tenemos nuestro archivo y en el Shell

#./archivo

Page 3: Programacion en Bash basica suse server

EJEMPLOS DE PROGRAMAS ESCRITOS EN PRO-GRAMACION BASH

PROGRAMA QUE MUESTRA EL TIPICO MENSA-JE “HOLA MUNDO”

#!/bin/bashclearecho “Hola mundo...”

OBTENER EL MAYOR DE 3 NUMEROS#!/bin/bashclearecho “Ingrese el primer valor”read val1echo “Ingrese el segundo valor”read val2echo “Ingrese el tercer valor”read val3max=$val1

if [ $val2 -gt $max ] then max=$val2 if [ $val3 -gt $max ] then max=$val3 fi fi

echo “El valor mayor es: “$max

Page 4: Programacion en Bash basica suse server

MANEJO DE PASE DE PARAMETROS EN PRO-GRAMACION BASH

#!/bin/bashclearecho Nombre del programa $0echo El primer parametro es $1echo El segundo parametro es $2echo El tercer parametro es $3

MANEJO DE PARAMETROS CON OPERACIONES MATEMATICAS

#!/bin/bashclearecho Nombre del programa $0echo El primer parametro es $1echo El segundo parametro es $2echo El tercer parametro es $3res=`expr $1 + $2 + $3`

echo $#echo $*echo $res

PROGRAMA QUE MUESTRA SI TECLEAS UNA VOCAL

#!/bin/bashclearecho “Programa para evaluar tecleo de vocales”echo “teclea un caracter “read letra

case $letra in

Page 5: Programacion en Bash basica suse server

a)echo “tecleaste una letra a “;;e)echo “tecleaste una letra e”;;i)echo “tecleaste una vocal i”;;o)echo “tecleaste la vocal o”;;u)echo “tecleaste la vocal u”;;*)echo $letra “ no es vocal”esac

PROGRAMA QUE OBTIENE APARTIR DE DOS NU-MEROS: SUMA, RESTA, MULTIPLICACION, DIVI-SION, RESIDUO Y EL MAYOR.

#!/bin/bashclearecho -n “Ingrese su nombre: “read val1echo “hola $val1”

echo “Ingres el primer valor”read val2echo “Ingres el segundo valor”read val3

sum=`expr $val2 + $val3`res=`expr $val2 - $val3`mul=`expr $val2 \* $val3`div=`expr $val2 / $val3`cen=`expr $val2 % $val3`

Page 6: Programacion en Bash basica suse server

echo “La suma es = “ $sumecho “La resta es = “ $resecho “La multiplicacion es = “ $mulecho “La divicion es = “ $divecho “La no se que es = “ $cen

if [ $val2 -lt $val3 ] then echo $val3 “ es mayor que “ $val2 else if [ $val2 -eq $val3 ] then echo “Los valores son iguales” else echo $val2 “ es mayor que “ $val3 fifi

USO DE CASE PARA LA IMPLEMENTACION DE UN MENU CON LAS SIGUIENTES OPCIONES:1.-FACTORIAL DE UN NUMERO2.-VER LA SERIE DE FIBONACCI3.-UN NUMERO X ELEVADO A LA POTENCIA Y

#!/bin/bashop=0while [ $op -ne 4 ]doclearecho “Bien venidos al MENU”

echo “Que es lo que quiere hacer”

echo “1) Sacar el factorial de un numeor”

echo “2) Ver la serie fibonacci”

Page 7: Programacion en Bash basica suse server

echo “3) Ver el valor de un numero X a la Y potencia”

echo “4) salir del programa”

read op

case $op in

1)echo “Introdusca el numero a factorializar”read numeroecho “Numero ingresado: “ $numeroi=1factorial=1 while [ $i -le $numero ] do let factorial*=$i let i=$i+1 doneecho “Factorial: “ $factorialread q;;2)echo “Cuantos numeros: “read num

num1=0num2=1

echo “Series Fibonacii: “echo $num1echo $num2

count=2

while [ $count -le $num ] do

Page 8: Programacion en Bash basica suse server

num3=`expr $num1 + $num2` echo $num3 num1=$num2 num2=$num3 count=`expr $count + 1`

doneread q;;

3)echo “Introdusca un numero X: “read Xecho “Introdusca un numero Y: “read Y

Z=$X

while [ 2 -le $Y ] do let X*=$Z let Y=$Y-1 done

echo “X a la Y es igual a: “ $Xread q;;

4) esac

done

Page 9: Programacion en Bash basica suse server

CONVERTIR SEGUNDO EN FORMATO HH:MM:SS

#!/bin/bashclearecho “Introduzca la cantidad de segundos: “read p

function hms{ $1 s=$1 let h=s/3600 let s=s-h*3600 let m=s/60 let s=s-m*60 echo “HH:” $h “MM:” $m “SS:” $s}

hms $p