Explicacion Practica
Explicaci´
on de pr´actica 3
Introducci´
on a los Sistemas Operativos
Facultad de Inform´
atica
Universidad Nacional de La Plata
12 de septiembre de 2014
Agenda
1 Introducci´
on
2 Conceptos b´
asicos
Comandos
Redirecciones y pipes
Variables y sustituci´
on de comandos
Reemplazo de comandos
3 Programaci´
on de scripts
Scripts
Estructuras de controlComparaciones
Estructuras de control en detalle
Argumentos y valor de retorno
Funciones
Alcance y visibilidad
Agenda
1 Introducci´
on
2 Conceptos b´
asicos
Comandos
Redirecciones y pipes
Variables y sustituci´
on de comandos
Reemplazo de comandos
3 Programaci´
on de scripts
Scripts
Estructuras de control
Comparaciones
Estructuras de control en detalle
Argumentos y valor deretorno
Funciones
Alcance y visibilidad
Introducci´on
¿Qu´e es una shell?
• Int´
erprete de comandos
• Interactivo
• En sistemas operativos *nix es configurable
• Proveen estructuras de control que permiten programar shell
scripts
¿Qu´e puedo hacer con shell scripts?
• Automatizaci´
on de tareas
• Aplicaciones interactivas
• Aplicaciones con interfaz gr´
afica (con el comandozenity, por
ejemplo)
Introducci´on
¿Qu´e es una shell?
• Int´
erprete de comandos
• Interactivo
• En sistemas operativos *nix es configurable
• Proveen estructuras de control que permiten programar shell
scripts
¿Qu´e puedo hacer con shell scripts?
• Automatizaci´
on de tareas
• Aplicaciones interactivas
• Aplicaciones con interfaz gr´
afica (con el comando zenity, porejemplo)
Tipos de shell
Existen muchas shells. Sus diferencias consisten principalmente en
sintaxis. A continuaci´on se listan las m´as utilizadas:
• sh: Shell por defecto en Unix.
• bash: C´
omoda, instalada por defecto en la mayor´ıa de las
distribuciones.
• dash: Eficiente, parcialmente compatible con bash.
• csh: Sintaxis incompatible con bash/dash.
• Otros...
Tip
En la materiautilizaremos bash.
Tipos de shell
Existen muchas shells. Sus diferencias consisten principalmente en
sintaxis. A continuaci´on se listan las m´as utilizadas:
• sh: Shell por defecto en Unix.
• bash: C´
omoda, instalada por defecto en la mayor´ıa de las
distribuciones.
• dash: Eficiente, parcialmente compatible con bash.
• csh: Sintaxis incompatible con bash/dash.
• Otros...
Tip
Enla materia utilizaremos bash.
Diferencias con otros lenguajes
¿Por qu´e shell script y no C, o Java, o Python?
• Pr´
actico para manejar archivos
• Extremadamente simple para crear procesos y manipular sus
salidas
• Independiente de la plataforma (a diferencia de C)
• Funciona en cualquier sistema operativo de tipo *nix
(distribuci´on GNU/Linux, Mac OS X, etc.)
• Se puedeprobar en el int´
erprete interactivo (a diferencia de C
y Java)
Elementos del lenguaje
• Instrucciones: comandos
❼ Internos o built-in (help para verlos)
❼ Externos (archivos separados man comando)
• Redirecciones y pipes
• Comentarios que empiezan con #
• Estructuras de control
❼ if
❼ while
❼ for (2 tipos)
❼ case
• Variables
❼ Strings
❼ Arreglos ()
• Funciones
Agenda
1Introducci´
on
2 Conceptos b´
asicos
Comandos
Redirecciones y pipes
Variables y sustituci´
on de comandos
Reemplazo de comandos
3 Programaci´
on de scripts
Scripts
Estructuras de control
Comparaciones
Estructuras de control en detalle
Argumentos y valor de retorno
Funciones
Alcance y visibilidad
Agenda
1 Introducci´
on
2 Conceptos b´
asicos
Comandos
Redirecciones y pipesVariables y sustituci´
on de comandos
Reemplazo de comandos
3 Programaci´
on de scripts
Scripts
Estructuras de control
Comparaciones
Estructuras de control en detalle
Argumentos y valor de retorno
Funciones
Alcance y visibilidad
Repaso de algunos comandos u´tiles
• Imprimir el contenido de un archivo
cat archivo
• Imprimir texto
e c h o ” Hola mundo”
• Leer una l´ınea desde...
Regístrate para leer el documento completo.