Sript

Solo disponible en BuenasTareas
  • Páginas : 6 (1440 palabras )
  • Descarga(s) : 10
  • Publicado : 11 de julio de 2010
Leer documento completo
Vista previa del texto
Scripts - GNU/Linux

· Antonio Varas 666 · Providencia, Santiago, Chile · Fono: (562) 354 04 00 · Email: egallardoortiz@gmail.com · WEb: www.duoc.cl

1

Scripts - Parámetros

El Shell ... • • • • • • • • Provee herramientas para manejo de variables. (Se vieron en el capítulo 11) Permite utilizar herramientas para manejo de ciclos y para estructuras condicionales. Además de recibir ymanipular parámetros. Los scripts pueden recibir y manipular parámetros que son referenciados dentro de los Scripts como $1, $2, etc. El conjunto de todos los parámetros está representado por $*. La cantidad de parámetros está representada por $#. El comando shift permite eliminar el primer parámetro de la lista, y correr todos los parámetros. El comando set nos permite ver todas las variables deentorno. Pero además, nos permite asignarle valor a los parámetros.
· Antonio Varas 666 · Providencia, Santiago, Chile · Fono: (562) 354 04 00 · Email: egallardoortiz@gmail.com · WEb: www.duoc.cl

Parámetros ...

Scripts – Ejemplos Parámetros

Ejemplo 1: echo "Cantidad de parámetros: $#" echo "Primer parámetro: $1" shift echo "Segundo parámetro $1" shift echo "El resto de los parámetros $*"Ejemplo 2: set Viva GNU Linux echo "Primer parámetro: $1" echo "Segundo parámetro: $2" echo "Tercer parámetro: $3"
· Antonio Varas 666 · Providencia, Santiago, Chile · Fono: (562) 354 04 00 · Email: egallardoortiz@gmail.com · WEb: www.duoc.cl

Scripts – Estructuras de Control

IF: • • Permite ejecutar un conjunto de comandos solamente si se cumple una determinada condición. La sintaxis es. if[ condicion ]; then comandos [else comandos] fi • • El else es opcional. Los corchetes [ ] en la condición son un comando en si mismo, también llamado test. – Para más información: man test.
· Antonio Varas 666 · Providencia, Santiago, Chile · Fono: (562) 354 04 00 · Email: egallardoortiz@gmail.com · WEb: www.duoc.cl

Scripts – Estructuras de Control (Cont.)

IF (Cont): • • • Permiteejecutar un conjunto de comandos solamente si se cumple una determinada condición. Las condiciones pueden ser: comando test, otros programas que devuelvan un 0 ó 1, o true o false. Las condiciones serán de este estilo: – !condicion: Si condición es falsa. – condicion1 -a condicion2: Las dos condiciones son verdaderas. – condicion1 -o condicion2: Una de las dos condiciones es verdadera. –cadena-de-caracteres: La cadena no esta vacía. – -z cadena-de-caracteres: La cadena esta vacía. – cadena = cadena: Las dos cadenas son iguales. – cadena != cadena: Las cadenas son distintas. – entero -eq entero: Los enteros son iguales.
· Antonio Varas 666 · Providencia, Santiago, Chile · Fono: (562) 354 04 00 · Email: egallardoortiz@gmail.com · WEb: www.duoc.cl

Scripts – Estructuras de Control - Ejemplo IFEjemplo IF: Envía un mensaje indicando si hay 1 o más usuarios conectados. cuantos=‘who | wc -l‘ if [ \$cuantos -gt 1 ]; then echo "Hay más de un usuario conectado" else echo "Sólo tú estás conectado" fi Comentarios: • Primero se guarda la cantidad de usuarios conectados al sistema en la variable cuantos. – Ojo con las comillas por que nos permite utilizar la salida de los comandos en nuestrocódigo • Luego utilizamos la estructura de if para compararlo con 1, la opción -gt del comando test significa mayor que.
· Antonio Varas 666 · Providencia, Santiago, Chile · Fono: (562) 354 04 00 · Email: egallardoortiz@gmail.com · WEb: www.duoc.cl

Scripts – Estructuras de Control (Cont.)

FOR: • • Es una estructura que permite una iteración durante un número determinado de veces. La sintaxises: for variable in lista; do comandos done • La variable, cuando se la coloca al lado del for, no lleva el signo $ adelante, pero si en los comandos se hace referencia a ella, se debe escribir $variable. La lista puede ser: – Una lista de números. Ej: 1 2 3 4 – Una lista de archivos. Ej: *.java – Una lista de argumentos. Ej: $*
· Antonio Varas 666 · Providencia, Santiago, Chile · Fono: (562)...
tracking img