Temario del curso
Introducción
- Objetivos
- Calendario del curso
- Presentación del curso
- Requisitos previos
- Bibliografía
- Responsabilidades de los participantes
- Resumen del curso
Repaso de conceptos básicos - opcional
- Archivos
- Directorios y procesos
- Visualización de directorios - ls
- Obtener ayuda - man
- Visualizar archivos - cat, more
- Comandos simples
- Tuberías (piping) - uso del símbolo |
- Redirección de salida - uso del símbolo >
- Redirección de salida - uso del símbolo >>
- Redirección de entrada - uso del símbolo <
- Redirección de errores
- Uso de /dev/null
- Tareas en primer plano (foreground)
- Tareas en segundo plano (background) - &
- Detener tareas - kill
- Archivos especiales - . y ..
- El indicador de comando (prompt) - PS1
- Crear alias
- Usar alias
- Historial de comandos
- Edición de la línea de comandos con las teclas de flecha
- Edición de la línea de comandos usando vi
- Personalización del shell
- El directorio home - HOME
- El directorio de trabajo actual - pwd
- Cambio de directorios - cd
- Crear directorio - mkdir
- Eliminar directorio - rmdir
- Copiar interactivo - cp -i
- Mover interactivo - mv -i
- Eliminar interactivo - rm -i
- Eliminar directorios (recursivamente) - rm -r
- Símbolos comodín - generación de nombres de archivos
- Contar palabras - wc
- Buscar archivos - find
- Buscar texto en archivos - grep, sort, cut, uniq, tr
- Cambiar permisos - chmod
Programación en Shell
- Creación de scripts de shell
- Prueba del comando
- Creación del archivo de script
- Agregar permisos de ejecución
- Prueba del script
- Ejecución del script con time
- Ejecución del script usando el operador punto (source)
- Ejecución del script con exec
- Ejecución del script con ksh
- Depuración del script
- Pasar parámetros
- El comando read
- Uso de read en scripts
- Elección del shell
- Limpiar la salida
- Suprimir entrada - stty
Caracteres especiales y variables
- Comillas
- Cadenas entre comillas dobles y simples - ", '
- Carácter de escape - *
- Cadenas entre comillas inversas - `
- Uso de $(...)
- Variables del sistema - set
- Otras variables especiales
- Variables de usuario
- Variables de usuario - unset
- Variables en scripts
- Comando typeset
- Variables enteras
- Constructos especiales
Creación de menús
- Condiciones - case
- Creación de un menú
- Iteración - while, until
- Suspensión de la salida - sleep
- Suspensión de la salida con dummy read
- Finalización del script
- Terminar el bucle
- Opción oculta: forking (creación) de un shell
- Control de interrupciones - trap
- Más sobre interrupciones
- Resaltar texto - tput
- Posicionar el cursor - backtab \b
- Menú del shell Korn
Selección y condicionales
- Pruebas condicionales
- Prueba de atributos de archivos
- Prueba de permisos de archivos
- Múltiples pruebas - ifs anidados
- Múltiples pruebas - elseif
- Condición NOT (negación)
- Múltiples condiciones en una prueba
- Prueba de cadenas de texto (strings)
- Uso de corchetes cuadrados
- Evitar entradas nulas
- Prueba de números
- Más sobre case
- Visualización de variables
- Agregar espacios
- Prueba de comandos
Iteración, bucles
- Cálculos - let
- Iteración - while, until
- Bucle infinito
- Iteración - for
- Más de 9 parámetros - shift
Subscripts y funciones
- Variables locales y globales
- Sub-scripts (sub-secuencias de comandos)
- Comando export
- Código de salida (exit status)
- Alias
- Funciones
- Funciones útiles
- Estatus de retorno (return status)
- Manipulación de funciones
- Funciones en scripts
Comandos avanzados
- Depuración - set
- Configuración con set
- Fusionar archivos - join
- Fusionar archivos con paste, basename y dirname
- Control de trabajos (jobs) - jobs
- Expresiones regulares
- Impresora global de expresiones regulares - grep
- Expresión grep extendida - egrep
- Grep rápido - fgrep
- Cálculos con expr
- Cálculos con bc y el comando eval
- Procesamiento de argumentos
- Comando getopts
- Uso de matrices (arrays)
Edición avanzada - vi & sed
- vi: asignación de combinaciones de teclas
- Asignación de teclas de control
- Uso de abreviaciones
- Edición de muchos archivos
- Expresiones regulares
- Inserción global
- Documento aquí (here document),
- Editor de flujo por lotes - sed: eliminar con -d, imprimir con -p, suprimir con -n, salir con -q, archivo con -f, entrada múltiple, sed
- Buscar y reemplazar
- Ejemplo de sed
Procesamiento de archivos de texto con awk
- Herramienta de programación awk
- Coincidencia de patrones
- Expresiones regulares
- Patrones de comparación
- Patrones compuestos
- Patrones de rango
- Patrones especiales
- Funciones integradas
- Solución de problemas en scripts awk
- Pasar parámetros
- Uso de 'contains' (contiene)
- Función printf
- Cálculos
- Funciones
- substr
- length
- Instrucciones de acción
- Instrucciones de flujo de control
- Matrices (arrays)
- Matrices con bucles for
- Ejemplos de awk
Requerimientos
El curso solo es adecuado para quienes tengan un buen conocimiento práctico de UNIX o hayan cursado la Introducción al UNIX.
Reseñas (4)
Me gustó el entrenamiento porque fue interactivo, el formador era conocedor del tema y los ejercicios me ayudaron a aprender. Los descansos cada hora también me mantuvieron fresco y enfocado.
Musat Robert
Curso - UNIX/Linux Shell Scripting
Traducción Automática
Me gusta la forma de presentar la teoría y dar ejemplos prácticos. Está muy bien estructurado. También aprecio que el formador siempre llega puntual y tiene buenas habilidades de comunicación.
Louise
Curso - UNIX/Linux Shell Scripting
Traducción Automática
la constante retroalimentación. Posibilidad de hacer preguntas y obtener respuestas, recibir algunos scripts funcionales en los que estuvimos trabajando, modificarlos y mejorarlos en algún momento.
Nikita - DB Global Technology SRL
Curso - UNIX/Linux Shell Scripting
Traducción Automática
Wojciech y NobleProg centraron el itinerario para satisfacer mis necesidades.
christopher Connelly - NEETRAC / GA TECH
Curso - UNIX/Linux Shell Scripting
Traducción Automática