17 Encauzamiento o “pipes” Es posible que la salida estándar de un programa se envíe directamente a la entrada estándar de datos de otro programa. ls c* | more echo “mi texto” | cat > fich3 echo “mi texto” > fich3
18 Mensajes Echo permite sacar mensajes por pantalla echo “esto es una prueba” Podemos combinarlo con un redireccionamiento de la salida Echo “otra prueba” > prueba2 En este caso se crea un fichero llamado prueba2 con el texto otra prueba. Las comillas “” permiten incluir espacios en el texto.
19 Variables de la Shell Las shell poseen variables que se pueden utilizar para: Configuración personal de nuestro entorno de trabajo. Información. Transferir pequeños parámetros entre un proceso padre y otro hijo.
20 Variables del Shell (II) Set permite: Mostrar las variables y asignar valores. set VARIABLE=valor En realidad las variables contienen un texto de forma que si necesitamos incluir espacios podemos indicar el inicio y final con “” Para que un hijo herede una variable del padre, previamente el padre debe exportarla.
21 Variables del Shell (III) Ej: SET TERM=vt100 TERM=vt100 (también se puede escribir sin SET) export TERM Podemos ver el contenido o asignar a otra. echo $VARIABLE VAR2 = ${TERM}”y otro contenido” {} indican donde comienza y acaba el nombre de la variable para no confundirlo con el resto del texto.
22 Variables del Shell (IV) unset variable elimina la variable. Algunas variables de la shell: HOME indica el directorio “home” del usuario. PATH directorios donde buscar un comando (el directorio por defecto . debe estar para que pueda encontrar un comando en el directorio actual TERM indicamos que tipo terminal USER nombre del usuario (login) PS1 prompt del sistema, $, se puede cambiar
23 Variables del Shell (V) Algunas variables propias de la shell: $? valor de salida del último comando. $$ valor del número de identificación de proceso $! valor del número de identificación de proceso del último hijo que se invocó. Ej: echo $$ 23763 (obtenemos el PID de la shell)
24 Caracteres especiales en Shell (I) Barra invertida () : se toma el siguiente carácter literalmente. Comillas sencillas (‘’) : lo que va entre comillas sencillas se toma íntegramente. Comillas dobles (“”): Se interpretan $(variable) la barra invertida y comillas sencillas. Punto y coma (;): Separa comandos. Comillas invertidas (“): Evalúa expresiones.
25 Caracteres especiales en Shell (II) Ej: echo ; ls echo ; ls echo “;” ls echo $HOME echo “mi home es $HOME” echo ‘mi home es $HOME’ echo a b c echo “ a b c” echo `ls`
26 Ejecución de órdenes en modo subordinado El UNIX permite ejecutar procesos de forma que trabajen en un segundo plano. comando & lanza el proceso en “background” sort < entrada > salida & Nos muestra el PID del proceso creado También nos avisará cuando acabe.
27 Control de trabajos Podemos “supender” un proceso interactivo con Ctrl-Z. jobs nos permite ver los trabajos Aparece una lista numerada de procesos. fg núm reactiva un proceso en “foreground” bg num lleva el proceso a “background”
28 Ficheros de configuración de sh La shell puede ejecutar una serie de comandos automáticamente al iniciar una sesión de usuario (Equivalente al AUTOEXEC.BAT en DOS) /etc/profile definido por root se ejecutará siempre (se definen variables como TERM,…) .profile en nuestro HOME podemos editarlo y modificarlo .bashrc modifica los valores de la shell bash
29 Búsqueda de archivos find directorio –opciones criterios Opciones más usuales: name: patrón de búsqueda del nombre print: indica que se muestre el nombre find / -name “pas*” –print find .-name datos –print
30 Disco disponible UNIX almacena la información en filesystems df muestra la información de cada fs. (Sean locales o remotos)
Filesystem 1024-blocks Used Available Capacity Mounted on /dev/hda1 208260 142698 54808 72% /
31 Disco utilizado Se puede saber el espacio total ocupado por un conjunto de ficheros o subdirectorios. du 9 ./default Desglosa por defecto 45 ./rc.d el tamaño de cada subdirectorio 12 ./ppp 10 ./slip 5 ./msgs al final indica el tamaño 401 . Total de todos incluidos La opción –s muestra el total sin desglosar los subdirectorios.
32 Búsquedas de texto grep nos permite buscar cadenas de texto en un fichero, un conjunto de ficheros o la entrada estándar. Muestra todas las líneas donde aparece. grep cadena fichero ps -ef | grep sendmail Para buscar en un conjunto de ficheros grep texto *.c
33 Contar elementos en ficheros wc hosts
wc –c sólo cuenta caracteres wc –l sólo cuenta líneas wc –w sólo cuenta palabras
34 Almacenamiento Podemos reunir en un solo fichero varios ficheros de forma que es más practico para procesarlos (envío, copias de seguridad) tar opciones lista Opciones usuales: x : extrae c : crear v : ver los ficheros que se procesan f : indica el nombre del fichero Se pueden controlar tamaños de bloque, permisos,…
35 Almacenamiento (II) Ej: ( es aconsejable acabar en .tar para recordar el formato) tar cvf fich.tar c* : crea el fichero tar tar recuerda la ruta indicada de almacenamiento (rel/abs) tar cvf fich.tar . : almacenamiento relativo tar cvf fich.tar /home/paco : almac. absoluto tar xcf fich.tar : extrae fichero tar tvf fich.tar : muestra el contenido
36 Compresión / Descompresión Podemos comprimir el contenido de un fichero. tar no comprime la información. compress datos genera un fichero llamado datos.Z (y elimina el original). compress es estándar en UNIX y nos garantiza portabilidad a otros sistemas. Un fichero llamado nombre.tar.Z nos indica que está comprimido con compress y que además utilizó tar. uncompress datos.Z :descomprime el fichero
37 Compresión/Descompresión (II) Existen otros formatos de compresión (gzip, zip) que podemos encontrar en bastantes sistemas UNIX gzip datos : genera un fichero llamado datos.z (y elimina el original). gzip –d datos.z : descomprime el fichero zip dt.zip datos : genera el fichero datos.zip zip –k dt.zip datos : genera el fichero datos.zip compatible con el fomato zip de MSDOS. unzip dt.zip :descomprime el fichero zip
38 Tareas (I) Tipos: (el superusuario debe autorizar su uso) Eventuales (at, batch) Períódicas (cron) Cada usuario tiene su propia listas para cron, at y batch Aconsejable controlar las salidas hacia ficheros Si no se especifican ficheros de salida, cualquier mensaje de salida estándar o de errores se enviará por correo electrónico al usuario. batch es similar a at pero ejecutará los comandos cuando la carga del sistema lo permita (aproximadamente menor de 0.8)
39 Tareas (II) Para at y batch: La secuencia de órdenes se introducen por la entrada estándar at expresión :podemos definir con expresión que se ejecute a una hora y día determinados. atq : muestra nuestros procesos pendientes atrm : podemos eliminar un proceso pendiente
40 Tareas (III) at Expresiones: now + n (minutes| hour|days|weeks) (now | today | tomorrow) 4 pm : define una hora 4 pm Jul 29 : define fecha y hora Ej: (el resultado la orden ls se enviará por mail) $echo ls | at now + 1 minute warning: commands will be executed using /bin/sh job 1 at 1999-10-20 13:34 $atq 1 1999-10-20 13:34 a $atrm 1
41 Tareas (IV) cron crontab nos permite definir cada tarea crond es el daemon de control de tareas. crontab –e permite editar (por defecto usa el vi) 1 * * * * /etc/cron.hourly 02 4 * * * /etc/cron.daily 22 4 * * 0 /etc/cron.weekly 42 4 1 * * /etc/cron.monthly Min hora dia mes dia-semana Podemos especificar numeros, rangos – , Ej: ejecutar a las 1 y 3 de la madrugada: 0 1,3 * * * ejecutar a las 1,2,3, y 7 de la madrugada: 0 1-3,7 * * *
42 Redes de área Local Transmisión de información: Intercambio de datos. (Sistemas de ficheros, correo electrónico, servidores de bases de datos,ftp) Ejecución remota (telnet, ssh, cálculo) Aplicaciones (WWW)
43 Ethernet Define el nivel físico Cableado (Cable coaxial,UTP) (lím.distancia) Velocidad de transmisión: 10/100 Mbit/s Formato de los paquetes: IEEE 802.3 Número ethernet: Ej: 00:60:50:23:25:5B (6 bytes expresados en hexadecimal) Permite soportar múltiples protocolos
44 Verificaciones para comprobar la red: ping Tablas de enrutamiento: route traceroute tcpdump /proc/net
45 Linux como servidor NFS NFS Servidor de ficheros: (ampliamente utilizado entre máquinas UNIX) /etc/exports mountd nfsd
46 Seguridad en Linux Limitación de acceso: /etc/hosts.allow /etc/hosts.deny Limitación en ftp: /etc/ftpusers /etc/ftpaccess /etc/ftphosts Acceso remoto de impresoras (lpd) /etc/hosts.lpd
47 X-Windows Similar a windows Concepto de servidor Editores: xemacs Graficos: xmgrace, gnuplot, ..
Página anterior | Volver al principio del trabajo | Página siguiente |