PROGRAMACION SHELL AVANZADA
Enviado por danzo665 • 1 de Agosto de 2011 • 8.025 Palabras (33 Páginas) • 773 Visitas
CURSO 03-55
PROGRAMACIÓN AVANZADA EN
SHELL
Ramón M. Gómez Labrador
(ramon.gomez@eii.us.es)
Octubre de 2.003
2
03-55 Programación Avanzada en Shell
ÍNDICE
1. Introducción. ....................................................................................................................4
1.1. Características principales de BASH............................................................................4
1.2. Cuándo utilizar el intérprete de mandatos.....................................................................5
2. Modos de operación..........................................................................................................6
2.1. La línea de mandatos. ..................................................................................................6
2.2. Edición y ejecución de un guión. .................................................................................6
2.3. Recomendaciones de programación. ............................................................................7
3. Redirecciones. ...................................................................................................................9
3.1. Redirección de entrada.................................................................................................9
3.2. Redirecciones de salida................................................................................................9
3.3. Combinación de redirecciones. ..................................................................................10
3.4. Redirección de entrada/salida.....................................................................................11
3.5. Documento interno. ...................................................................................................11
3.6. Tuberías.....................................................................................................................12
4. Variables. ........................................................................................................................14
4.1. Tipos de variables. .....................................................................................................14
4.1.1. Variables locales. ................................................................................................14
4.1.2. Variables de entorno. ..........................................................................................15
4.1.3. Parámetros de posición. ......................................................................................16
4.1.4. Variables especiales. ...........................................................................................17
4.2. Matrices.....................................................................................................................18
4.3. Configuración del entorno. ........................................................................................18
5. Expresiones. ....................................................................................................................20
5.1. Expresiones aritméticas. ............................................................................................20
5.2. Expresiones condicionales. ........................................................................................22
5.2.1. Expresiones de ficheros.......................................................................................23
5.3.2. Expresiones comparativas numéricas. .................................................................24
5.3.3. Expresiones comparativas de cadenas. ................................................................25
6. Entrecomillado y expansión. ..........................................................................................26
6.1. Entrecomillado. .........................................................................................................26
6.2..Expansión..................................................................................................................26
6.2.1. Expansión de llaves.............................................................................................27
2.6.2. Expansión de tilde...............................................................................................27
6.2.3. Expansión de parámetro o de variable. ................................................................28
6.2.4. Sustitución de mandato. ......................................................................................29
6.2.5. Expansión aritmética...........................................................................................30
6.2.6. Sustitución de proceso.........................................................................................30
6.2.7. División en palabras............................................................................................31
6.2.8. Expansión de fichero...........................................................................................31
7. Programación estructurada. ..........................................................................................33
7.1. Listas de mandatos.....................................................................................................33
7.1.1. Listas condicionales. ...........................................................................................33
7.2. Estructuras condicionales y selectivas. .......................................................................34
3
7.2.1. Estructuras condicionales. ...................................................................................34
7.2.2. Estructura selectiva. ............................................................................................36
7.3. Bucles........................................................................................................................37
7.3.1. Bucles genéricos. ................................................................................................37
7.3.2. Bucles condicionales “mientras” y “hasta”. .........................................................38
7.3.3. Bucle de selección interactiva. ............................................................................39
8. Funciones. .......................................................................................................................40
9. Características especiales ...............................................................................................42
...