SlideShare una empresa de Scribd logo
TEMA 3
Elementos básicos de
Unix para la
administración
pag. 2
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.1. Introducción
■ Administrar un sistema UNIX :
– Gestionar los recursos :
■ Procesos (...demonios, shell).
■ Ficheros (...dispositivos, usuarios, nucleo) .
– Por medio de comandos, ficheros de configuración y programas.
– A través del shell (X-Windows).
– Automatizar, automatizar y automatizar...programación shell...
pag. 3
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.2. El shell
■ Objetivos
– Proveer un interface con línea de comandos.
– Facilitar un lenguaje de programación interpretado orientado a procesos y
ficheros : automatización de tareas de administración.
■ Diferentes shells : Bourne, Bash , Korn, C...
■ Ejecución de un shell :
– Ultimo campo de cada registro de usuario en /etc/passwd.
– Desde la línea de comandos : sh, bash, tcsh...
■ Salir del shell : logout, exit, ctrl-D.
pag. 4
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.3. Comandos UNIX
■ Notación para la descripción de comandos:
– Entre corchetes (“[“ y “]”) : opcional,
– Entre llaves (“{“ y “}”) : seleccionar entre uno de los elementos separados
por una barra (“|”),
– Los puntos suspensivos (“...”) : lo anterior puede repetirse.
■ Ejemplo : visualizar [-adlp] {si|no} fichero...
■ Formato general :
Nombre del comando [-opciones] lista_de_parametros
■ Ejemplo : ls -ld /etc/passwd / /var
pag. 5
Unai Arronategui TEMA 3 : Elementos básicos de Unix
■ Tipos de comandos:
– filtros (cat,grep...).
– los que no lo son (date, who...),
■ Ejecutable asociado
– incluidos en el shell,
– o un programa ejecutable separado (shell, binario...).
■ Ejecución normal de un comando por el shell :
– Búsqueda del programa ejecutable asociado.
– Crear un proceso hijo que ejecute el comando
– Esperar que termine (muerte del proceso hijo generado).
pag. 6
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.4. Ejemplos de comandos
■ Comandos simples :
– cal, who, date, whoami...
■ Manipulación de ficheros y directorios :
– cp, mv, mkdir, rm, rmdir.
■ Filtros con manipulaciones simples :
– cat, more (less), head, tail.
■ Filtros más elaborados :
– Contador de caracteres,palabras y lineas :
■ wc [-c] [-w] [-l] fichero.
– Ordenar datos según unos criterios.
■ sort [-r] [-n] [-u] [+numeron] fichero.
– ...
pag. 7
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.5. Caracteres especiales
Espacio en blanco,
tabulador
Paso de linea
Quotes
‘
“

&
;
Separación de argumentos (ignorados)
Fin de linea de comando
Invalidación de caracteres especiales
el shell ignora todos los caracteres especiales contenidos
entre acentos rectos
echo ‘uno dos tres’
el shell ignora todos los caracteres especiales EXCEPTO $
` 
el shell ignora cualquier carácter especial justo a
continuación de este
echo uno dos 
Ejecutar un comando como tarea de fondo
make zImage &
Separación de multiples comandos en una línea
ls ; cd /etc ; ls
pag. 8
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.6. Redirección de entradas y salidas
■ Ejecución de un nuevo programa, apertura automática de 3
descriptores de fichero con una destinaciones por defecto :
– Entrada standard (stdin) - 0 (descriptor) - teclado (por defecto)
– Salida standard (stdout) - 1 - “ pantalla “
– Salida error standard - 2 - “ pantalla “
■ Algunos caracteres especiales permiten cambiar la procedencia y
las destinaciones por defecto :
– cat /etc/passwd > unfichero
■ No todos los comandos utilizan estas entradas salidas (cd).
■ Orden de evaluación : de izquierda a derecha
$ ls chap1.ps xx 2> errores_salida >& 2
chap1.s
pag. 9
Unai Arronategui TEMA 3 : Elementos básicos de Unix
comando < fichero Toma un fichero como entrada standard
comando > fichero Utiliza fichero como salida standard.
Si ya existía, borra el contenido anterior.
comando >> fichero Añade la salida de comando al fichero
comando << etiqueta La entrada standard se toma de las siguientes
líneas hasta que encuentra una línea que
contiene etiqueta
`comando` Ejecuta comando y reemplaza `comando`
por el resultado de su salida standard
comando1 | comando2 Pasa la salida de comando1 a la entrada de
comando2
comando n> fichero Redirecciona la salida de descriptor de
fichero n al fichero
comando [n]>& m Redirecciona el descriptor fichero n (1 si no
hay número) al descriptor de fichero m
pag. 10
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.7. Ejemplos de redirección
– ls > los.ficheros
– cat los.ficheros | more
– ls /etc >> los.ficheros
– echo numero de líneas en los.ficheros = `wc -l los.ficheros`
– cat << terminado > salida
– cd /etc > fichero.salida
– ls | cd
– echo `wc -l /etc/passwd`
– cat /etc/passwd > /dev/ttyp1
– ls > `tty`
– cat beam.au > /dev/audio
– cat /etc/passwd > / dev/null
– cat > nuevofichero < /dev/null
pag. 11
Unai Arronategui TEMA 3 : Elementos básicos de Unix
■ Reemplazamiento de nombres de ficheros con determinados
caracteres especiales :
■ Ejemplos :
– ls a*bc
– ls [ic]???
– ls [!ic]???
3.8. Substitución de nombres de ficheros
* substituir por uno o más
caracteres
? substituir por un solo carácter
[ ] substituir por uno de los
caracteres dentro de [ ]
[! ] substituir cualquier carácter
NO incluido después de !
pag. 12
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.9. Variables shell
■ Objetivos :
– programación shell,
– control del contexto de ejecución del intérprete shell (PATH, HOME, ...).
■ Utilización :
#comando=“ls -a”
#$comando
.profile .Xmodmap
#MiNombre=
– Utilización de llaves si la variable es parte de una palabra mayor
directorio=/etc/
propio=/home/usuario
cp ${directorio}passwd $home
pag. 13
Unai Arronategui TEMA 3 : Elementos básicos de Unix
■ Variables predefinidas :
SHELL el programa ejecutable para el
shell que se utiliza
UID el id del usuario en curso
USER el nombre del usuario
TERM el tipo de terminal en uso
DISPLAY la pantalla de X-Windows
PATH El path de ejecución del
usuario
PS1 el prompt de comandos
PS2 el prompt de extension de un
comando a varias líneas
pag. 14
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.10. Comandos relacionados con las variables
– set : visualización de las variables del contexto en curso.
– readonly : convierte a una variable en solo lectura. Sin parametro muestra
la lista de todas las variables de solo lectura.
■ readonly variable
– unset: eliminar una variable del contexto, salvo las variables de solo lectura
y algunas variables predefinidas (IFS, PATH, PS1, PS2).
■ unset variable
– expr : provee la posibilidad de evaluar expresiones aritméticas enteros (para
reales hay que utilizar los comandos bc y awk).
■ cuenta =`expr $cuenta * 2`
– export : para acceder desde un nuevo shell a las variables creadas por el
shell padre. Se realiza una copia de shell padre a hijo. Cualquier
modificación en el hijo no se verá en el padre.
■ export variable
pag. 15
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.11. Substitución avanzada de variables
MiNombre=
echo mi nombre es ${MiNombre:-”ningun nombre”}
mi nombre es ningun nombre
echo mi nombre es ${MiNombre:?”no tengo nombre”}
bash: MiNombre: no tengo nombre
echo mi nombre es ${MiNombre:=”ningun nombre”}
mi nombre es ningun nombre
${variable:-dato} reemplazar esta expresión con el valor de variable si lo tiene,
sino reemplazar por valor ; ¡ pero no hacer la asignación
variable=dato !
${variable :=dato} Lo mismo que arriba, pero si variable no tiene valor asignarle
dato
${variable : ?mensaje} reemplazar esta expresión con el valor de variable si lo tiene,
sino mostrar mensaje en stderr. Si mensaje es null entonces
mostrar :
prog :variable : parameter null or not set en stderr
${variable :+dato} si variable tiene un valor reemplazarlo por dato, sino no hacer
nada
pag. 16
Unai Arronategui TEMA 3 : Elementos básicos de Unix
3.12. Orden de evaluación
■ El orden de evaluación de los elementos (no protegidos con quotes)
de un comando es:
1. Redirecciones de entradas y salidas
2. Substitución de variables
3. Substitución de nombres de ficheros
4. Ejecución efectiva del comando
~#pipe=| ~#star=*
~#echo $pipe ~#echo $star
| Mail News Readme
■ Comando eval : se utiliza para evaluar dos veces la línea de
comandos.
eval ls $pipe more

Más contenido relacionado

PPT
PDF
Tutorial 18pag
PDF
Tutorial linux
PPTX
Curso introductorio de shell/unix para físicos
PDF
Resumen scripts unix
Tutorial 18pag
Tutorial linux
Curso introductorio de shell/unix para físicos
Resumen scripts unix

Similar a Elementos basicos de unix para la administracion (20)

PDF
tutorial0.pdf
PDF
Comandos linux unix de manipulación de archivos y directorios
PDF
PDF
Comandos basicos linux
PDF
Comando de linux
PDF
Cursshellscript castellano
DOCX
Julissa
DOCX
Julissa
PDF
Unix Command Line Workshop 101
PDF
Agilidad en shell de linux
ODT
Como instalar unix
PDF
Quasi - Comandos básicos para UNIX
PDF
Comandos linux
PDF
Linux basico-8.PDF
DOCX
Tutorial shell scripts
PPTX
Tema1 redhat
PDF
The linux shell. Shell Scripting desde 0
PDF
Quasi - scripts-linux
ODP
Curso Bash 1
PPTX
Administración básica de ubuntu server parte 3
tutorial0.pdf
Comandos linux unix de manipulación de archivos y directorios
Comandos basicos linux
Comando de linux
Cursshellscript castellano
Julissa
Julissa
Unix Command Line Workshop 101
Agilidad en shell de linux
Como instalar unix
Quasi - Comandos básicos para UNIX
Comandos linux
Linux basico-8.PDF
Tutorial shell scripts
Tema1 redhat
The linux shell. Shell Scripting desde 0
Quasi - scripts-linux
Curso Bash 1
Administración básica de ubuntu server parte 3
Publicidad

Último (11)

PPTX
Conceptos basicos de Base de Datos y sus propiedades
PPTX
Fundamentos de Python - Curso de Python dia 1
PDF
Su punto de partida en la IA: Microsoft 365 Copilot Chat
PDF
AutoCAD Herramientas para el futuro, Juan Fandiño
DOCX
trabajo programacion.docxxdxxxddxdxxdxdxxxdxxdxdxd
PPTX
sistemas de informacion.................
PPTX
ORIGEN DE LA IA - GRADO 1102 INTELIGENCIA
PDF
Clase 3 - Presentación visual (Insertando objetos visuales) POWER POINT.pdf
PPTX
Implementación equipo monitor12.08.25.pptx
PPTX
Tratará sobre Grafos_y_Arboles_Presentacion.pptx
PPTX
Derechos_de_Autor_y_Creative_Commons.pptx
Conceptos basicos de Base de Datos y sus propiedades
Fundamentos de Python - Curso de Python dia 1
Su punto de partida en la IA: Microsoft 365 Copilot Chat
AutoCAD Herramientas para el futuro, Juan Fandiño
trabajo programacion.docxxdxxxddxdxxdxdxxxdxxdxdxd
sistemas de informacion.................
ORIGEN DE LA IA - GRADO 1102 INTELIGENCIA
Clase 3 - Presentación visual (Insertando objetos visuales) POWER POINT.pdf
Implementación equipo monitor12.08.25.pptx
Tratará sobre Grafos_y_Arboles_Presentacion.pptx
Derechos_de_Autor_y_Creative_Commons.pptx
Publicidad

Elementos basicos de unix para la administracion

  • 1. TEMA 3 Elementos básicos de Unix para la administración
  • 2. pag. 2 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.1. Introducción ■ Administrar un sistema UNIX : – Gestionar los recursos : ■ Procesos (...demonios, shell). ■ Ficheros (...dispositivos, usuarios, nucleo) . – Por medio de comandos, ficheros de configuración y programas. – A través del shell (X-Windows). – Automatizar, automatizar y automatizar...programación shell...
  • 3. pag. 3 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.2. El shell ■ Objetivos – Proveer un interface con línea de comandos. – Facilitar un lenguaje de programación interpretado orientado a procesos y ficheros : automatización de tareas de administración. ■ Diferentes shells : Bourne, Bash , Korn, C... ■ Ejecución de un shell : – Ultimo campo de cada registro de usuario en /etc/passwd. – Desde la línea de comandos : sh, bash, tcsh... ■ Salir del shell : logout, exit, ctrl-D.
  • 4. pag. 4 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.3. Comandos UNIX ■ Notación para la descripción de comandos: – Entre corchetes (“[“ y “]”) : opcional, – Entre llaves (“{“ y “}”) : seleccionar entre uno de los elementos separados por una barra (“|”), – Los puntos suspensivos (“...”) : lo anterior puede repetirse. ■ Ejemplo : visualizar [-adlp] {si|no} fichero... ■ Formato general : Nombre del comando [-opciones] lista_de_parametros ■ Ejemplo : ls -ld /etc/passwd / /var
  • 5. pag. 5 Unai Arronategui TEMA 3 : Elementos básicos de Unix ■ Tipos de comandos: – filtros (cat,grep...). – los que no lo son (date, who...), ■ Ejecutable asociado – incluidos en el shell, – o un programa ejecutable separado (shell, binario...). ■ Ejecución normal de un comando por el shell : – Búsqueda del programa ejecutable asociado. – Crear un proceso hijo que ejecute el comando – Esperar que termine (muerte del proceso hijo generado).
  • 6. pag. 6 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.4. Ejemplos de comandos ■ Comandos simples : – cal, who, date, whoami... ■ Manipulación de ficheros y directorios : – cp, mv, mkdir, rm, rmdir. ■ Filtros con manipulaciones simples : – cat, more (less), head, tail. ■ Filtros más elaborados : – Contador de caracteres,palabras y lineas : ■ wc [-c] [-w] [-l] fichero. – Ordenar datos según unos criterios. ■ sort [-r] [-n] [-u] [+numeron] fichero. – ...
  • 7. pag. 7 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.5. Caracteres especiales Espacio en blanco, tabulador Paso de linea Quotes ‘ “ & ; Separación de argumentos (ignorados) Fin de linea de comando Invalidación de caracteres especiales el shell ignora todos los caracteres especiales contenidos entre acentos rectos echo ‘uno dos tres’ el shell ignora todos los caracteres especiales EXCEPTO $ ` el shell ignora cualquier carácter especial justo a continuación de este echo uno dos Ejecutar un comando como tarea de fondo make zImage & Separación de multiples comandos en una línea ls ; cd /etc ; ls
  • 8. pag. 8 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.6. Redirección de entradas y salidas ■ Ejecución de un nuevo programa, apertura automática de 3 descriptores de fichero con una destinaciones por defecto : – Entrada standard (stdin) - 0 (descriptor) - teclado (por defecto) – Salida standard (stdout) - 1 - “ pantalla “ – Salida error standard - 2 - “ pantalla “ ■ Algunos caracteres especiales permiten cambiar la procedencia y las destinaciones por defecto : – cat /etc/passwd > unfichero ■ No todos los comandos utilizan estas entradas salidas (cd). ■ Orden de evaluación : de izquierda a derecha $ ls chap1.ps xx 2> errores_salida >& 2 chap1.s
  • 9. pag. 9 Unai Arronategui TEMA 3 : Elementos básicos de Unix comando < fichero Toma un fichero como entrada standard comando > fichero Utiliza fichero como salida standard. Si ya existía, borra el contenido anterior. comando >> fichero Añade la salida de comando al fichero comando << etiqueta La entrada standard se toma de las siguientes líneas hasta que encuentra una línea que contiene etiqueta `comando` Ejecuta comando y reemplaza `comando` por el resultado de su salida standard comando1 | comando2 Pasa la salida de comando1 a la entrada de comando2 comando n> fichero Redirecciona la salida de descriptor de fichero n al fichero comando [n]>& m Redirecciona el descriptor fichero n (1 si no hay número) al descriptor de fichero m
  • 10. pag. 10 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.7. Ejemplos de redirección – ls > los.ficheros – cat los.ficheros | more – ls /etc >> los.ficheros – echo numero de líneas en los.ficheros = `wc -l los.ficheros` – cat << terminado > salida – cd /etc > fichero.salida – ls | cd – echo `wc -l /etc/passwd` – cat /etc/passwd > /dev/ttyp1 – ls > `tty` – cat beam.au > /dev/audio – cat /etc/passwd > / dev/null – cat > nuevofichero < /dev/null
  • 11. pag. 11 Unai Arronategui TEMA 3 : Elementos básicos de Unix ■ Reemplazamiento de nombres de ficheros con determinados caracteres especiales : ■ Ejemplos : – ls a*bc – ls [ic]??? – ls [!ic]??? 3.8. Substitución de nombres de ficheros * substituir por uno o más caracteres ? substituir por un solo carácter [ ] substituir por uno de los caracteres dentro de [ ] [! ] substituir cualquier carácter NO incluido después de !
  • 12. pag. 12 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.9. Variables shell ■ Objetivos : – programación shell, – control del contexto de ejecución del intérprete shell (PATH, HOME, ...). ■ Utilización : #comando=“ls -a” #$comando .profile .Xmodmap #MiNombre= – Utilización de llaves si la variable es parte de una palabra mayor directorio=/etc/ propio=/home/usuario cp ${directorio}passwd $home
  • 13. pag. 13 Unai Arronategui TEMA 3 : Elementos básicos de Unix ■ Variables predefinidas : SHELL el programa ejecutable para el shell que se utiliza UID el id del usuario en curso USER el nombre del usuario TERM el tipo de terminal en uso DISPLAY la pantalla de X-Windows PATH El path de ejecución del usuario PS1 el prompt de comandos PS2 el prompt de extension de un comando a varias líneas
  • 14. pag. 14 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.10. Comandos relacionados con las variables – set : visualización de las variables del contexto en curso. – readonly : convierte a una variable en solo lectura. Sin parametro muestra la lista de todas las variables de solo lectura. ■ readonly variable – unset: eliminar una variable del contexto, salvo las variables de solo lectura y algunas variables predefinidas (IFS, PATH, PS1, PS2). ■ unset variable – expr : provee la posibilidad de evaluar expresiones aritméticas enteros (para reales hay que utilizar los comandos bc y awk). ■ cuenta =`expr $cuenta * 2` – export : para acceder desde un nuevo shell a las variables creadas por el shell padre. Se realiza una copia de shell padre a hijo. Cualquier modificación en el hijo no se verá en el padre. ■ export variable
  • 15. pag. 15 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.11. Substitución avanzada de variables MiNombre= echo mi nombre es ${MiNombre:-”ningun nombre”} mi nombre es ningun nombre echo mi nombre es ${MiNombre:?”no tengo nombre”} bash: MiNombre: no tengo nombre echo mi nombre es ${MiNombre:=”ningun nombre”} mi nombre es ningun nombre ${variable:-dato} reemplazar esta expresión con el valor de variable si lo tiene, sino reemplazar por valor ; ¡ pero no hacer la asignación variable=dato ! ${variable :=dato} Lo mismo que arriba, pero si variable no tiene valor asignarle dato ${variable : ?mensaje} reemplazar esta expresión con el valor de variable si lo tiene, sino mostrar mensaje en stderr. Si mensaje es null entonces mostrar : prog :variable : parameter null or not set en stderr ${variable :+dato} si variable tiene un valor reemplazarlo por dato, sino no hacer nada
  • 16. pag. 16 Unai Arronategui TEMA 3 : Elementos básicos de Unix 3.12. Orden de evaluación ■ El orden de evaluación de los elementos (no protegidos con quotes) de un comando es: 1. Redirecciones de entradas y salidas 2. Substitución de variables 3. Substitución de nombres de ficheros 4. Ejecución efectiva del comando ~#pipe=| ~#star=* ~#echo $pipe ~#echo $star | Mail News Readme ■ Comando eval : se utiliza para evaluar dos veces la línea de comandos. eval ls $pipe more