Manual de UNIX Rev 2.

4
Jonathan Noel Tombs ´ ´ Jorge Chavez Orzaez Noviembre 1995

UNIX

1

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

2

Introducci´ n o
En este manual hemos intentado recopilar nuestra experiencia en el sistema operati´ vo UNIX. Esta orientado fundamentalmente a usuarios poco experimentados (lusers1 ) en dicho sistema operativo, aunque se pretenden rellenar lagunas de conocimiento de otros usuarios “experimentados”. ´ ´ Somos conscientes de que todav´a no esta completo y puede contener gran numero ı ´ de imperfecciones as´ como errores ortograficos. No obstante no debe de confundirse el ı no entrar en detalle, con un error. Esto es, existen muchos comandos cuya explicaci´ n o es demasiado simple, esto ha sido hecho a conciencia con objeto de no distraer al lector en detalles (que aunque para un lector avanzado puedan parecer fundamentales) los autores no consideran importantes para el objetivo planteado, no obstante se aceptan sugerencias. Otro aspecto es la no traducci´ n de gran parte de la terminolog´a, tambi´ n realizao ı e do con conciencia de ello, dado que la mayor parte de la documentaci´ n disponible se o halla en lenguaje anglosaj´ n. o Para cualquier comentario, bug report, sugerencia, etc. jon@esi.us.es chavez@esi.us.es ˜ Agradecemos a todos los companeros y alumnos que han colaborado en las correcciones ´ y sugerencias de este manual, en particular a Juan Toledo Cota por sus multiples (;)) e interesantes correcciones. Deseamos que este manual os sirva de ayuda para facilitar el acceso a este sistema ´ operativo, y desmitifique el recelo que se sigue teniendo hacia el.

Copyright
c Copyright Jon Tombs y Jorge Chavez 1995. ´ Este manual puede ser reproducido bajo las condiciones siguientes: • Este texto debe de aparecer en todas las copias que se realicen, parciales o completas del presente manual. ´ • Cualquier modificaci´ n o traducci´ n del contenido debera notificarse previamente a los autores. o o ˜ • Los autores no se responsabilizan de cualquier dano o p´ rdida que se derive del uso del manual. e

El diccionario Jargon V 3.0 define: :luser: /loo’zr/ n. A {user}; esp. one who is also a {loser}. ({luser} and {loser} are pronounced identically.) This word was coined around 1975 at MIT. Under ITS, when you first walked up to a terminal at MIT and typed Control-Z to get the computer’s attention, it printed out some status information, including how many people were already using the computer; it might print ”14 users”, for example. Someone thought it would be a great joke to patch the system to print ”14 losers”instead. There ensued a great controversy, as some of the users didn’t particularly want to be called losers to their faces every time they used the computer. For a while several hackers struggled covertly, each changing the message behind the back of the others; any time you logged into the computer it was even money whether it would say usersor ”losers”. ¨ Finally, someone tried the compromise ”lusers”, and it stuck. Later one of the ITS machines supported ‘luser’ as a request-for-help command. ITS died the death in mid-1990, except as a museum piece; the usage lives on, however, and the term ‘luser’ is often seen in program comments.

1

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

3

´ Indice General
´ 1 Introduccion 2 Comenzando 2.1 Terminales . . . . . 2.2 Login . . . . . . . . 2.3 Passwords . . . . . 2.4 Cerrando la sesi´ n . o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6 6 6 7 7 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 8 9 10 10 10 11 14 16 17 18 18 20 20 21 21 21 22 23 23 24 24 25 26 27 29 30 31

3 Almacenamiento de ficheros ´ 4 Ordenes basicas 4.1 Ficheros y Directorios . . . . . . . . . . . 4.2 Ordenes relacionadas con Directorios . . 4.3 Visitando ficheros . . . . . . . . . . . . . 4.4 Copiando, moviendo y borrando ficheros 4.5 Espacio de disco . . . . . . . . . . . . . . 4.6 Protecci´ n de ficheros . . . . . . . . . . . o 4.7 Filtros . . . . . . . . . . . . . . . . . . . . 4.8 Transferencia a diskettes. . . . . . . . . 4.8.1 Unix y DOS . . . . . . . . . . . . ´ 4.9 Mas Commandos . . . . . . . . . . . . . 5 Shells 5.1 Variables de Entorno . . . . . . . . 5.2 Redirecci´ n . . . . . . . . . . . . . . o 5.3 CSH y TCSH . . . . . . . . . . . . . 5.3.1 Ejecuci´ n de comandos . . . o 5.3.2 Aliases . . . . . . . . . . . . 5.3.3 Comandos propios . . . . . . 5.3.4 Variables propias del Shell . 5.4 SH y BASH . . . . . . . . . . . . . . 5.4.1 Comandos propios del Shell ´ 6 Ayuda y Documentacion 7 Procesos 8 Editores 8.1 Editores modo EMACS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 El X windows system 9.1 Uso del rat´ n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 9.2 Algunas Aplicaciones X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Manual de UNIX Rev 2.4 10 Internet 10.1 Acceso a la red . . . . . . . 10.2 E-Mail . . . . . . . . . . . . 10.2.1 Direcciones de mail 10.2.2 Nomenclatura . . . 10.2.3 aplicaci´ n mail . . o 10.2.4 aplicaci´ n elm . . . o 10.3 News . . . . . . . . . . . . 10.3.1 aplicaci´ n rn . . . . o 10.3.2 aplicaci´ n slrn . . o 10.4 ftp Anonymous . . . . . . . 10.5 Archie . . . . . . . . . . . . 10.6 WWW . . . . . . . . . . . . ´ 11 Impresion ´ 12 Compresion

´ Jon Tombs & Jorge Chavez

4 31 32 33 34 34 35 35 37 38 39 39 40 41 42 43 44 44 44 45 48

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

. . . . . . . . . . . .

´ 13 Compilacion y Debugging 13.1 cc & gcc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.2 make & Makefile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.3 dbx debugger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 FAQ (Frecuently Asked Questions) 15 Reference Charts 15.1 UNIX Reference . 15.2 ELM Reference . 15.3 EMACS Reference 15.4 VI Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

49 49 50 51 53

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

5

´ 1 Introduccion
´ UNIX es el sistema mas usado en investigaci´ n cient´fica, tiene una larga historia y o ı ´ muchas de sus ideas y m´ todo se encuentran en sistemas mas modernos como DOS2 y e Windows. Las caracter´sticas fundamentales del UNIX moderno son: ı • Memoria Virtual: ´ Memoria grande y lineal: Un programa en una maquina de 32 Bits puede acceder ´ y usar direcciones de un rango de 4GB en un maquina de solo 4MB de RAM. El sistema s´ lo asigna memoria aut´ ntica cuando le hace falta, en caso de falta de o e memoria de RAM, se utiliza el disco duro (swap). • Multitarea (Multitasking): Cada programa con su propia “idea” de la memoria. Es imposible que un programa afecte a otro sin usar los servicios del sistema operativo. Si dos programas escriben en la misma direcci´ n de memoria cada uno mantiene su propia idea de o su contenido. • Multiusuario: ´ ´ Mas de una persona puede usar la maquina al mismo tiempo. ´ ´ ´ Programas de otros usuarios continuan ejecutandose a pesar de que tu entres en ´ la maquina. • Casi todo tipo de dispositivo puede ser accedido como un fichero. ˜ • Existen muchas utilidades disenadas para que la salida de una pueda ser la entrada de la otra. ´ • Permite compartir dispositivos (como disco duro) entre una red de maquinas. ´ Por su naturaleza de multiusuario, NUNCA se debe apagar una maquina UNIX3 , ya ´ ´ que una maquina apagada sin raz´ n puede matar trabajos de d´as, perder los ultimos o ı cambios de tus ficheros e ir degenerando dispositivos como el disco duro. . . Entre los sistemas operativos UNIX actuales cabe destacar: • Linux: disponible en la familia x86, las estaciones Alpha de Digital, la familia 68K, estaciones MIPS, estaciones SPARC . . . • SunOS4 : disponible para la familia 68K as´ como para la familia SPARC de estaı ciones de trabajo SUN. • Solaris5 : disponible para la familia SPARC de SUN as´ como para la familia x86. ı • OSF16 : disponible para Alpha
˜ Pero para protegerse de los abogados de UNIX, introdujeron pequenos cambios para tener un interfaz distinto 3 ´ Incluyendo el caso en que la maquina es un PC normal corriendo Linux u otra versi´ n de UNIX o 4 SunOS 4.1.x tambi´ n se conoce como Solaris 1 e 5 tambi´ n conocido como SunOS 5.x, Solaris 2 o Slowaris e :-) 6 tambi´ n conocido como Dec Unix e
2

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

6

• Ultrix: disponible para VAX de Digital • SYSVR47 : disponible para la familia x86, vax, . . . • IRIX: disponible para MIPS • AIX8 : disponible para RS6000 de IBM y PowerPC. • WindowsNT9 : disponible para la familia x86, Alpha y MIPS.

2 Comenzando
En este apartado comentaremos las operaciones de comienzo y fin de una sesi´ n as´ o ı ˜ como la modificaci´ n de la contrasena (que a menudo no es la deseada por el usuario, o y que por lo tanto puede olvidar con facilidad).

2.1 Terminales
Para iniciar una sesi´ n es necesario poder acceder a un terminal. Pueden destacarse o dos tipos de terminales: • terminal de texto: Consta de una pantalla y de un teclado. Como indica su nombre, en la pantalla s´ lo es posible imprimir caracteres de texto. o ´ ´ • terminal grafico: Consta de pantalla grafica, teclado y rat´ n. Dicha pantalla o suele ser de alta resoluci´ n y a menudo en color. Aunque al comenzar la sesi´ n o o ´ suelen estar en modo texto, una vez iniciada esta, se puede trabajar en modo ´ grafico. En este modo se pueden emplear ventanas que emulan el comportamiento de un terminal de texto (xterm).

2.2 Login
El primer paso es encontrar un terminal libre donde aparezca el login prompt del sistema: hostname login: En este punto pueden ocurrir dos cosas: ´ • La pantalla esta en blanco – comprobar que la pantalla est´ encendida e – pulsar la tecla Return para desactivar el protector de pantalla screenblank • Otra persona ha dejado una sesi´ n abierta. En este caso existe la posibilidad de o ´ ´ intentar en otra maquina o bien finalizar la sesi´ n de dicha persona (si esta no o se halla en las proximidades)
7

Tambi´ n conocido como Unixware y Novell-Unix e tambi´ n conocido como Aches e :-) 9 ´ ´ Bill Gates dijo que “WindowsNT sera el UNIX mas usado en el mundo”
8

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

7

Una vez que se haya superado el paso anterior de encontrar el login prompt se pro˜ cede con la introducci´ n de tu Username al prompt de login y despu´ s tu contrasena o e (password) adecuado.

2.3 Passwords
El password puede ser cualquier secuencia de caracteres a tu elecci´ n. Deben seguirse o las siguientes pautas: ´ ´ • Debe ser facil de recordar por uno mismo. Si se olvida, debera pasarse un mal rato dici´ ndole al System Administrator que uno lo ha olvidado. . . e • Para evitar que alguna persona no deseada obtenga tu password y tenga libre acceso a los archivos de tu cuenta: ´ ´ – Las mayusculas y minusculas no son equivalentes sin embargo se recomienda que se cambie de una a otra – Los caracteres num´ ricos y no alfab´ ticos tambi´ n ayudan. Debe tenerse e e e sin embargo la precauci´ n de usar caracteres alfanum´ ricos que se puedan o e encontrar en todos los terminales desde los que se pretenda acceder. – Las palabras de diccionario deben ser evitadas • Debes cambiarlo si crees que tu password es conocido por otras personas, o des´ ´ cubres que algun intruso10 esta usando tu cuenta. • El password debe de ser cambiado con regularidad. La orden para cambiar el password en UNIX es passwd. ´ A menudo cuando existen varias maquinas que comparten recursos (disco duro, impresora, correo electr´ nico, . . . ), para facilitar la administraci´ n de dicho sistema se o o unifican los recursos de red (entre los que se hayan los usuarios de dicho sistema) en ´ una base de datos comun. Dicho sistema se conoce como NIS (Network Information Service)11 . Si el sistema empleado dispone de este servicio, la modificaci´ n de la cono ˜ ´ ´ trasena en una maquina supone la modificaci´ n en todas las maquinas que constituyan o el dominio NIS.

´ 2.4 Cerrando la sesion
´ Es importante que nunca se deje abierta una sesi´ n, pues algun “gracioso” podr´a tener o ı libre acceso a ficheros de tu propiedad y manipularlos de forma indeseable para ti. ´ ´ Para evitar todo esto basta teclear logout o exit y habra acabado tu sesi´ n de UNIX o ´ en dicha maquina12 Una vez que uno acabe su sesi´ n, es conveniente que APAGUE EL MONITOR. o
intruso es cualquier persona que no sea el usuario Antiguamente se conoc´a como YP (Yellow Pages), pero debido a un problema de marca registrada de ı United Kingdom of British Telecommunications se adoptaron las siglas NIS 12 En caso de que se estuviera trabajando bajo X-Windows consultar la secci´ n posterior del manual o
11 10

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

8

3 Almacenamiento de ficheros
´ Los sistemas de ficheros que son comunes a todos las maquinas son usualmente: • /home – Espacio reservado para las cuentas de usuarios ´ • /bin, /usr/bin – Binarios (ejecutables) basicos de UNIX • /usr/local – Zona con las aplicaciones no comunes a todos los sistemas UNIX, pero no por ello menos utilizadas... En dicha zona se pueden encontrar para algunas aplicaciones: ´ – Informaci´ n relacionada con dicha aplicaci´ n (en forma de paginas de mano o ual, texto o bien ficheros Postscript) – Ficheros de ejemplo, tutorials, etc

´ 4 Ordenes basicas
Para ejecutar un comando, basta con teclear su nombre (tambi´ n debes tener permiso e ´ para hacerlo). Los argumentos empiezan normalmente con el caracter -

4.1 Ficheros y Directorios
´ En un sistema informatico la informaci´ n se encuentra en ficheros que contienen o informaci´ n (tabla de datos, texto ASCII, fuente en lenguaje C, ejecutable, imagen, o figura, resultados de simulaci´ n, . . . ). Para organizar toda la informaci´ n se dispone o o de una entidad denominada directorio, que permite el almacenamiento en su interior tanto de ficheros como de otros directorios13 . Se dice que la estructura de directorios ´ en UNIX es jerarquica o arborescente, debido a que todos los directorios nacen en un mismo punto (denominado directorio ra´z). De hecho la zona donde uno trabaja es un ı nodo de esa estructura de directorios, pudiendo uno a su vez generar una estructura por debajo de ese punto. Un fichero se encuentra situado siempre en un directorio y su acceso se realiza emple´ ´ ando el camino que conduce a el en el Arbol de Directorios del Sistema. Este camino es conocido como el PATH. El acceso a un fichero se puede realizar empleando: • Path Absoluto, Aquel que empieza con / Por ejemplo : /etc/printcap • Path Relativo, Aquel que NO empieza con / Por ejemplo : examples/rc.cir ´ • Nombres de ficheros y directorios pueden usar un maximo de 255 caracteres, ´ cualquier combinaci´ n de letras y s´mbolos ( el caracter / no se permite). o ı Los caracteres comod´n pueden ser empleados para acceder a un conjunto de ficheros ı con caracter´sticas comunes. El signo * puede sustituir cualquier conjunto de caracı ´ teres14 y el signo ? cualquier caracter individual.
13 Normalmente se acude a la imagen de una caja que puede contener informes o bien otros cajones, y as´ sucesivamente ı 14 Incluido el punto ‘.’, UNIX no es DOS

Manual de UNIX Rev 2.4 Por ejemplo15 :
csh% ls f2c.1 face_update.1 faces.1 flea.1 flex.1 csh% ls rp* rplay.1 csh% ls *e?? face_update.1

´ Jon Tombs & Jorge Chavez

9

flexdoc.1 ftptool.1 funzip.1 fvwm.1 rasttoppm.1 rplayd.1 zforce.1

rcmd.1 rlab.1 robot.1 rplay.1 rplayd.1 rptp.1 zmore.1

rptp.1 rxvt.1 zcat.1 zcmp.1 zdiff.1

zforce.1 zip.1 zipinfo.1 zmore.1 znew.1

Los ficheros cuyo nombre comience por . se denominan ocultos, as´ por ejemplo en ı el directorio de partida de un usuario.
csh% ls -a ˜user . .alias .. .cshrc .Xdefaults .enviroment

.fvwmrc .joverc .kshrc

.login .profile .tcshrc

.xinitrc

Algunos caracteres especiales para el acceso a ficheros son: . .. ˜ ˜user Directorio actual ´ Directorio superior en el arbol Directorio HOME16 Directorio HOME del usuario user

4.2 Ordenes relacionadas con Directorios
ls Este comando permite listar los ficheros de un determinado directorio. Si no se le suministra argumento, lista los ficheros y directorios en el directorio actual. Si se ˜ anade el nombre de un directorio el listado es del directorio suministrado. Existen varias opciones que modifican su funcionamiento entre las que destacan: • -l (Long listing) proporciona un listado extenso, que consta de los permisos17 de ˜ cada fichero, el usuario el tamano del fichero,. . . • -a (list All) lista tambi´ n los ficheros ocultos. e • -R (Recursive) lista recursivamente el contenido de todos los directorios que se encuentre. • -g (list Group) lista el grupo18 al que pertenece dicho fichero
csh% es el prompt en todos los ejemplos ´ se comentara posteriormente este concepto 18 cada usuario de Unix pertenece a uno o varios grupos, y cada fichero pertenece a un determinado usuario as´ como a un determinado grupo. ı
17 15

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

10

pwd (Print Working Directory) Este comando proporciona el nombre del directorio actual cd (Change Directory) Permite moverse a trav´ s de la estructura de directorios. Si no se e le proporciona argumento se provoca un salto al directorio $HOME. El argumento puede ser un nombre absoluto o relativo de un directorio mkdir (MaKe DIRectory) Crea un directorio con el nombre (absoluto o relativo) proporcionado rmdir (ReMove DIRectory) Elimina un directorio con el nombre (absoluto o relativo) suministrado. Dicho directorio debe de estar vac´o. ı

4.3 Visitando ficheros
´ Este conjunto de ordenes permite visualizar el contenido de un fichero sin modificar su contenido. cat muestra por pantalla el contenido de un fichero que se suministra como argumento. more ´ esta orden es analoga a la anterior, pero permite la paginaci´ n. o less o m ´ es una versi´ n mejorada del anterior. Aparte de que es mas corto de teclear, permite o una paginaci´ n correcta en ambas direcciones!! o Otra ventaja es que no lee el fichero entero antes de arrancar.

4.4 Copiando, moviendo y borrando ficheros
cp (CoPy) copia un fichero/s con otro nombre y/o a otro directorio. Veamos algunas opciones: • -i (interactive), impide que la copia provoque una p´ rdida del fichero destino si e 19 . ´ este existe ´ • -r (recursive), copia un directorio y toda la estructura que cuelga de el. mv (MoVe) mover un fichero/s a otro nombre y/o a otro directorio. ´ Dispone de opciones analogas al caso anterior. rm (ReMove) borrar un fichero/s. En caso de que el argumento sea un directorio y se haya sumnistrado la opci´ n -r, es posible borrar el directorio y todo su contenido. o

4.5 Espacio de disco
Los usuarios disponen de una cuota de disco duro limitada, a continuaci´ n se comentan o ´ una serie de ordenes relacionadas con esta restricci´ n: o
muchos sistemas tienen esta opci´ n habilitada por omisi´ n a trav´ s de un alias, para evitar equivoo o e caciones de los Lusers
19

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

11

quota -v muestra las cuotas de disco del usuario. La opci´ n -v permite ver las cuotas de un disco remoto. o du (Disk Usage), permite ver el espacio de disco ocupado (en bloques de disco20 ) por el fichero o directorio suministrado como argumento. La opci´ n -s impide que cuando se o aplique recursividad en un directorio se muestren los subtotales df (Disk Free), muestra los sistemas de ficheros de los que dispone el sistema, con las cantidades totales/usadas/disponibles de cada uno ln Permite realizar un enlace (link) entre dos ficheros o directorios. Un enlace puede ser: • hard link: se puede realizar s´ lo entre ficheros del mismo sistema de ficheros. o El fichero enlazado apunta a la zona de disco donde se halla el fichero original. Por tanto, si se elimina el fichero original, el enlace sigue teniendo acceso a dicha informaci´ n. Es el enlace por omisi´ n. o o • symbolic link: permite enlazar ficheros/directorios21 de diferentes sistemas de ficheros. El fichero enlazado apunta al nombre del original. As´ si se elimina el ı fichero original el enlace apunta hacia un nombre sin informaci´ n asociada. Para o realizar este tipo de enlace debe emplearse la opci´ n -s. o Un enlace permite el uso de un fichero en otro directorio distinto del original sin necesidad de copiarlo, con el consiguiente ahorro de espacio.

´ 4.6 Proteccion de ficheros
Dado que el sistema de ficheros UNIX es compartido por un conjunto de usuarios, surge el problema de la necesidad de privacidad. Sin embargo, dado que existen conjuntos ´ de personas que trabajan en comun, es necesario la posibilidad de que un conjunto de usuarios puedan tener acceso a una serie de ficheros (que puede estar limitado para el resto de usuarios). Cada fichero y directorio del sistema dispone de un propietario, un grupo al que pertenece y unos permisos. Existen tres tipos fundamentales de permisos: • lectura (r–Read): en el caso de un fichero significa poder examinar el contenido del mismo; en el caso de un directorio significa poder entrar en dicho directorio. • escritura (w–Write): en el caso de un fichero significa poder modificar su contenido; en el caso de un directorio es crear un fichero o directorio en su interior. ´ • ejecucion (x–eXecute): en el caso de un fichero significa que ese fichero se pueda ejecutar (binario o fichero de procedimientos); en el caso de un directorio es poder ´ ejecutar alguna orden dentro de el. Se distinguen tres grupos de personas sobre las que especificar permisos:
20 21

1 bloque normalmente es 1Kbyte debe hacerse notar que los directorios s´ lo pueden ser enlazados simb´ licamente o o

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

12

• user: el usuario propietario del fichero • group: el grupo propietario del fichero (excepto el usuario). Como ya se ha comentado, cada usuario puede pertenecer a uno o varios grupos y el fichero generado pertenece a uno de los mismos. • other: el resto de los usuarios (excepto el usuario y los usuarios que pertenezcan al grupo) Tambi´ n se puede emplear all que es la uni´ n de todos los anteriores. e o Para visualizar las protecciones de un fichero o directorio se emplea la orden ls -l, cuya salida es de la forma: -rw-r--r-...otra informaci´n... o CD_list

Los 10 primeros caracteres muestran las protecciones de dicho fichero: ´ • El primer caracter indica el tipo de fichero de que se trata: – - fichero – d directorio – l enlace (link) – c dispositivo de caracteres (p.e. puerta serie) – b dispositivo de bloques (p.e. disco duro) – s socket (conexi´ n de red) o – p tuber´a (pipe) ı • Los caracteres 2,3,4 son los permisos de usuario • Los caracteres 5,6,7 son los permisos del grupo • Los caracteres 8,9,10 son los permisos del resto de usuarios As´ en el ejemplo anterior -rw-r--r-- se trata de un fichero donde el usuario ı puede leer y escribir, mientras que el grupo y el resto de usuarios s´ lo pueden leer. o Estos suelen ser los permisos por omisi´ n para un fichero creado por un usuario. Para o un directorio los permisos por omisi´ n suelen ser: drwxr-xr-x donde se permite al o ´ ´ usuario “entrar” en el directorio y ejecutar ordenes desde el. chmod Esta orden permite modificar los permisos de un fichero. chmod permisos files Existen dos modos de especificar los permisos: ´ • Modo absoluto o modo num´ rico. Se realiza empleando un numero que resulta e de la OR de los siguientes modos: 400 200 100 040 lectura por el propietario. escritura por el propietario. ´ ejecuci´ n (busqueda) por el propietario. o lectura por el grupo.

Manual de UNIX Rev 2.4 020 010 004 002 001 4000 2000

´ Jon Tombs & Jorge Chavez

13

escritura por el grupo. ´ ejecuci´ n (busqueda) por el grupo. o lectura por el resto. escritura por el resto. ´ ejecuci´ n (busqueda) por el resto. o Set User ID, cuando se executa este binario el proceso corre ˜ con los permisos del dueno del fichero. Set Group ID cuando se executa este binario el proceso corre en el mismo grupo que tiene el fichero.

Por ejemplo: chmod 640 *.txt ´ Permite la lectura y escritura por el usuario, lectura para el grupo y ningun permiso para el resto, de un conjunto de ficheros que acaban en .txt • Modo simb´ lico o literal. Se realiza empleando una cadena (o cadenas separadas o por comas) para especificar los permisos. Esta cadena se compone de: who operation permission siendo: – who : es una combinaci´ n de: o ∗ ∗ ∗ ∗ u : user g : group o : others a : all (equivalente a ugo)

Si se omite este campo se supone a, con la restricci´ n de no ir en contra de o ´ la mascara de creaci´ n (umask). o – operation: es una de las siguientes operaciones: ˜ ∗ + : anadir permiso ∗ − : eliminar permiso ∗ = : asignar permiso, el resto de permisos de la misma categor´a se anuı lan. – permission: es una combinaci´ n de los caracteres: o ∗ ∗ ∗ ∗ r : read w : write x : execute X : ejecuci´ n en un directorio o de un fichero que tuviera el permiso de o ejecuci´ n en alguna de las clases de usuario. o ˜ ∗ s : en ejecuci´ n usar los permisos de dueno. o ´ ∗ t : despu´ s de terminar ejecuci´ n, el programa continua en memoria e o (cache). Por ejemplo: chmod u+x tarea Permite la ejecuci´ n por parte del usuario22 del fichero tarea. o
´ un error muy frecuente es la creaci´ n de un fichero de ordenes (script file) y olvidar permitir la ejecuo ci´ n del mismo. o
22

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

14

chmod u=rx,go=r *.txt permite la lectura y ejecuci´ n del usuario, y s´ lo la lectura por parte del grupo y el o o resto de usuarios. ´ La opci´ n -R hace que la orden se efectue recusivamente. o umask Esta es una orden intr´nseca del Shell que permite asignar los permisos que se desea ı tengan los ficheros y directorios por omisi´ n. o ˜ ´ ´ El argumento que acompana a la orden es un numero octal que aplicara una XOR sobre los permisos por omisi´ n (rw-rw-rw- para ficheros y rwxrwxrwx para directorios). o ´ El valor por omisi´ n de la mascara es 077 que s´ lo habilita al usuario para lecturao o ´ escritura. Otro valor que se suele emplear es 022 que permite ademas al grupo y al resto la lectura. ´ Sin argumentos muestra el valor de la mascara. chgrp Cambia el grupo propietario de una serie de ficheros/directorios chgrp grupo files ´ El usuario que efectua esta orden debe de pertenecer al grupo mencionado. id Muestra la identificaci´ n del usuario23 , as´ como el conjunto de grupos a los que pertenece. o ı

4.7 Filtros
´ Existe un conjunto de ordenes en UNIX que permiten el procesamiento de ficheros de texto. Se denominan filtros (Unix Filters) porque normalmente se trabaja empleando ´ redirecci´ n recibiendo datos por su stdin24 y retornandolos modificados por su stdo out25 . awk gawk Es un procesador de ficheros de texto que permite la manipulaci´ n de las l´neas de una o ı forma procedural (i.e. con decisiones en funci´ n del contenido de la misma). o (Ejemplo) Supongamos que tenemos un fichero file con dos columnas. awk "{ print $2, $1 }"file Imprime esas dos columnas en orden inverso. cat ´ ´ Es el filtro mas basico, copia la entrada a la salida. cut Para un fichero compuesto por columnas de datos, permite el borrado de un rango de columnas. diff Permite comparar el contenido de dos ficheros find ´ Permite la busqueda de un fichero en la estructura de directorios
23 a pesar de que el usuario se identifica por una cadena denominada username, tambi´ n existe un e ´ numero denominado UID que es un identificativo num´ rico de dicho usuario e 24 ´ entrada estandar 25 ´ salida estandar

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

15

find . -name file.dat -print Comenzando en el directorio actual recorre la estructura de directorios buscando el fichero file.dat, cuando lo encuentre imprime el path al mismo. find . -name "*%exec rm ’{}’ \; Busca en la estructura de directorios un fichero que acabe en % y lo borra. xargs orden repetir orden para cada argumento que se leer desde stdin. Permite uso muy eficiente de find. find . -name ‘‘*.dat’’ -print | xargs mv ../data Busca en la estructura de directorios todos los ficheros que acaben en .dat, y los mueve al directorio ../data. grep ´ Permite la busqueda de una cadena en un fichero head Muestra las primeras l´neas de un fichero. ı head -30 file Muestra las 30 primeras l´neas de file ı tail ´ Muestra las ultimas l´neas de un fichero. ı ´ tail -30 file Muestra las 30 ultimas l´neas de file ı tail +30 file Muestra desde la l´nea 30 en adelante de file ı tar gtar ´ Este comando permite la creaci´ n/extracci´ n de ficheros contenidos en un unico fichero o o denominado tarfile. Este tarfile suele se una cinta magnetica, pero tambi´ n e puede ser un fichero. Existen dos versiones: tar que es la versi´ n que viene contenida generalmente en un o SO Unix, y la versi´ n GNU26 del mismo gtar. o La acci´ n a realizar viene controlada por el primer argumento: o • c (Create) creaci´ n o • x (eXtract) extracci´ n o • t (lisT) mostrar contenido ˜ • r anadir al final ˜ • u anadir aquellos ficheros que no se hallen en el tarfile o que hayan sido modificados con posterioridad a la versi´ n que aparece. o A continuaci´ n se colocan las opciones: o • v : Verbose • z : comprimir/descomprimir el contenido (s´ lo disponible en gtar) o • f device : permite especificar un dispositivo para el tarfile (por omisi´ n /dev/rmt8): o – - el dispositivo es el stdin/stdout – /dev/rst? SCSI tape interface
26 GNU es un acr´ nimo de: GNU’s Not UNIX. GNU es el nombre del producto de la Free Software o Foundation, una organizaci´ n dedicada a la creaci´ n de programas compatible con UNIX (y mejorado o o ´ respecto a los estandars) y de libre distribuci´ n. o

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

16

– /dev/rmt? half-inch magnetic tape interface – /dev/fd? floppy ´ • M : Multivolumen (s´ lo disponible en gtar), es decir, usar varios diskettes (volumenes) o para almacenar un tarfile. ˜ • b N : permite la especificaci´ n del tamano de bloques N deseados. Un bloque es o Nx512 bytes y por omisi´ n N=20. o Veamos algunos ejemplos: tar cvf simul.tar *.dat genera un fichero simul.tar que contiene todos los ficheros que terminen en .dat del directorio actual. A medida que se va re˜ alizando indica el tamano en blo˜ ques de cada fichero anadido. igual que en el caso anterior, pero el fichero generado simul.tgz ha sido comprimido empleando gzip. muestra los ficheros contenidos en el tarfile simul.tar extrae todos los ficheros contenidos en el tarfile simul.tar permite el almacenamiento en ´ mas de un diskette (i.e. volumen) de la informaci´ n contenida en el o directorio simulacion. La opci´ n b y el argumento 18k permite o un mejor acceso al diskette, al es˜ pecificarse el tamano de bloques ´ empleado por este.

gtar zcvf simul.tgz *.dat

tar tvf simul.tar

tar xvf simul.tar

gtar cMbf 18k /dev/fd0 simulacion

wc (Word Count) ´ Contabiliza el numero de l´neas, palabras y caracteres ı

4.8 Transferencia a diskettes.
´ La filosof´a de diferentes unidades (A:, B:,. . . ) difiere de la estructura unica del sisı tema de ficheros que existe en Unix. Son varias las alternativas que existen para la transferencia de informaci´ n a diskette. o ´ • Una posibilidad es disponer de una maquina DOS con ftp instalado y acceso a red. Empleando dicha utilidad se pueden intercambiar ficheros entre un sistema y el otro.

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

17

´ • Existe un conjunto de ordenes MTools disponible en multitud de sistemas, que permiten el acceso a diskettes en formato DOS de una forma muy eficiente. – mcopy file file – mdir – mcd dirname – mformat Para especificar el fichero que se encuentra en el diskette, el nombre del fichero se compone: a:filename. Si se desea emplear el caracter comod´n para un conı junto de ficheros del diskette debe de rodearse de dobles comillas el mismo para evitar la actuaci´ n del Shell (p.e. mcopy a:*.dat".). o La opci´ n -t realiza la conversi´ n necesaria entre UNIX y DOS, que se debe reo o ´ alizar SOLO en ficheros de texto. ´ • IBM AIX ofrece las ordenes: – doswrite file file – dosread file file – dosdir – dosformat ´ El nombre del fichero file que reside en el fichero puede estar en mayusculas o ´ minusculas. La opci´ n -a realiza la conversi´ n necesaria entre UNIX y DOS, que se debe o o ´ realizar SOLO en ficheros de texto. 4.8.1 Unix y DOS Cuando se transfieren ficheros de texto entre DOS y Unix sin las precauciones adecuadas pueden aparecer los siguientes problemas: ´ 1. En DOS los nombres de los ficheros pueden tener un maximo de 8 caracteres y una extensi´ n de 3 caracteres. En Unix no existe restricci´ n respecto a la longitud o o del nombre, y aunque pueden llevar extensi´ n, no es obligatorio. o 2. El Return de DOS se compone de Carriage Return y Line Feed. Sin embargo en Unix s´ lo existe el Carriage Return. o ´ As´ un fichero de Unix visto desde DOS parece una unica l´nea. El caso inverso ı ı ´ es la aparici´ n del caracter ∧M al final de cada l´nea. o ı 3. La presencia de caracteres con c´ digo ASCII por encima del 127 (ASCII extendio do) suele plantear problemas. Debido a que en DOS dicho c´ digo depende de la o asignaci´ n hecha, que a su vez depende del pa´s. o ı ´ Para solucionar estos problemas se emplean las ordenes: • dos2unix dosfile unixfile Que realiza la conversi´ n de formato DOS a Unix o

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

18

• unix2dos unixfile dosfile Que realiza la conversi´ n de formato Unix a DOS o (NOTA) Estos comandos no admiten metacaracteres en su uso27 . Para realizar la conversi´ n de un conjunto de ficheros se podr´a emplear un comando interno del Shell, o ı que en csh o tcsh ser´a: ı foreach file (*.txt) dos2unix $file $file.dos end

´ 4.9 Mas Commandos
users who w ´ ´ Ver qui´ n esta conectado en la maquina e rusers ´ ´ Analogo al anterior pero para maquinas remotas (lanza un broadcast e imprime las ´ contestaciones de las maquinas) ping ´ ´ ver si una maquina esta conectada a red y si camino de Internet hasta la misma funciona correctamente. rup ´ ´ ver la carga de todas las maquinas de la red mas “pr´ xima”. o finger ´ finger user muestra informaci´ n28 sobre el usuario user en la maquina local. o finger user@hostname muestra informaci´ n sobre un usuario llamado user en una o ´ maquina hostname. ´ finger @hostname muestra los usuarios de una maquina. cal Muestra el calendario del mes actual date Muestra el d´a y la hora actual ı leave Alarma programable para que avise al llegar una determinada hora strings Muestra las cadenas literales que tiene un fichero binario

5 Shells
´ UNIX soporta varios interpretes de comandos o Shells, que ayudan a que tu inter´ o ´ acci´ n con el sistema sea lo mas c´ moda y amigable posible. La elecci´ n de cual es el o o ´ o ´ mas c´ modo es algo personal; en este punto s´ lo indicaremos los cinco mas significao tivos: ´ • sh : Bourne SHell, el shell basico, no pensado para uso interactivo.
es decir no se puede ejecutar dos2unix *.txt *.txt.dos ´ La informaci´ n proporcionada es el nombre de completo del usuario (GCOS), las ultima sesi´ n en dicha o o ´ maquina, si ha leido o no su correo y el contenido de los ficheros .plan y .project del usuario.
28 27

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

19

• csh : C-SHell, Shell con sintaxis como lenguaje “C”. El fichero de configuraci´ n es .cshrc (en tu directorio $HOME). o • tcsh : alTernative C-Shell (Tenex-CSHell), con editor de l´nea de comandos. ı El fichero de configuraci´ n es .tcshrc, o en caso de no existir, .cshrc (en tu o directorio $HOME • bash : Bourne-Again Shell, con lo mejor de sh, ksh y tcsh. ´ El fichero de configuraci´ n es .bash profile si estas entrando en tu cuenta por o primera vez (i.e. un login), y despu´ s el fichero .bashrc (en tu directorio $HOME). e • ksh : Korn SHell, sintaxis de sh con soporte para uso interactivo. Es el que establece por omisi´ n AIX. o El fichero de configuraci´ n es .profile en caso de login, en caso contrario el o fichero con el nombre de la variable ENV, si existe. ´ Si queremos cambiar de shell en un momento dado, s´ lo sera necesario que tecleemos o el nombre del mismo y estaremos usando dicho shell. Si queremos usar de forma permanente otro shell del que tenemos asignado por omisi´ n29 podemos emplear la orden o chsh que permite realizar esta acci´ n. o En los ficheros de configuraci´ n se encuentran las definiciones de las variables de o ´ entorno (enviroment variables) como camino de busqueda PATH, los “aliases” y otras configuraciones personales. Veamos unos caracteres con especial significado para el Shell: ´ • Dobles comillas permiten delimitar una cadena (constituyendo un unico argumento) con espacios, permitiendo la expansi´ n de $, ˜, \, *, ‘ o Por ejemplo: ´ o ı mcopy a:*.txt". permite que la expansi´ n del caracter comod´n la realice el programa, y no el Shell30 • ‘ 31 ejecuta la orden delimitada y pone su resultado en el stdout Por ejemplo: echo ‘pwd‘ imprime por pantalla el nombre del directorio actual. • ’ 32 no expande $, ˜, \, ‘ inclu´dos dentro de la cadena delimitada. ı Por ejemplo: echo ’pwd’ imprime por pantalla la cadena pwd • (comando) delimitado. • ;
29 30

hace un fork (nuevo shell hijo para ejecutar un proceso) del comando

´ permite la ejecuci´ n de mas de una orden en una s´ la l´nea de comando. o o ı

Por omisi´ n se suele asignar tcsh o recu´ rdese que esta orden permite la copia de ficheros entre diskettes en formato DOS y un sistema e Unix. Si el Shell realizara la expansi´ n, pasar´a como argumentos a la orden los ficheros del directorio o ı actual que terminaran en .txt 31 ´ Esta tilde es la empleada en franc´ s o inclinada hacia atras. e 32 ˜ Esta tilde es la empleada en espanol o inclinada hacia delante.

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

20

5.1 Variables de Entorno
Las variables de entorno permiten la configuraci´ n por defecto de muchos programas o (donde los programas buscan datos y tus preferencias) y se encuentran definidas en los ficheros de configuraci´ n anteriormente mencionados. Para referenciar a las variables o poner el s´mbolo $ delante, por ejemplo, para mostrar el camino de tu directorio por ı defecto: echo $HOME ´ Las variables de entorno mas importantes son: • HOME – Tu directorio por defecto ´ • PATH – Tu camino de busqueda, una lista de directorios separado con ‘:’ para buscar programas • EDITOR y/o VISUAL – Tu editor por defecto ´ • DISPLAY – Bajo el sistema de X windows, el nombre de maquina y pantalla que ´ estas usando. • TERM – Tu tipo de terminal33 . • SHELL – Tu Shell por defecto ´ • MANPATH – Camino para buscar paginas de manuales • PAGER – Programa de paginaci´ n de texto o • TMPDIR – Directorio para ficheros temporales

´ 5.2 Redireccion
Cuando el un programa espera que se teclee algo, aquello que el usuario teclea se conoce como el Standard Input: stdin. Los caracteres que el programa retorna por pantalla es lo que se conoce como Standard Output: stdout (o Standard Error: stderr34 ). El signo < permite que un programa reciba el stdin desde un fichero en vez de la interacci´ n con el usuario. Por ejemplo: o mail admin < file Invoca el comando mail con argumento (destinatario del mail) admin, siendo el contenido del mensaje el contenido del fichero file en vez del texto que usualmente teclea ´ el usuario. Mas a menudo aparece la necesidad de almacenar en un fichero la salida de un comando. Para ello se emplea el signo >. man bash > file Invoca el comando man con argumento (informaci´ n deseada) bash pero indicando o que la informaci´ n debe ser almacenada en el fichero file en vez de ser mostrada por o pantalla. En otras ocasiones uno desea que la salida de un programa sea la entrada de otro. Esto se logra empleando los denominados PIPES, para ello se usa el signo |. Este signo permite que el stdout de un programa sea el stdin del siguiente.
33 34

En la mayor´a de los casos se trata de una emulaci´ n de vt100 ı o Si estos mensajes son de error

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

21

zcat file.Z | more Invoca la orden de descompresi´ n de zcat, y conducir dicho flujo de caracteres hacia el o ´ ´ paginador more, de forma que podamos ver pagina a pagina el fichero descomprimido. A parte de los s´mbolos mencionados existen otros que permiten acciones tales coı mo: ˜ • >> Anadir el stdout al final del fichero indicado (append) • >& (csh, tcsh y bash s´ lo) Redireccionar el stdout y stderr. o • >! Igual que > pero con sobreescritura del fichero. • >>& Igual que >& pero en modo append • >>! Igual que >> pero con la adici´ n que funciona tambi´ n cuando el fichero no o e existente • 2> (sh, ksh y bash s´ lo)35 Redireccionar el stderr. o

5.3 CSH y TCSH
´ Son dos de los Shells interactivos mas empleados. Una de las principales ventajas de tcsh es que permite la edici´ n de la l´nea de comandos, y el acceso a la historia de o ı ´ ordenes usando las teclas de cursores. ´ 5.3.1 Ejecucion de comandos • Si el comando introducido es propio del Shell (built–in), se ejecuta directamente. • En caso contrario: – si el comando contiene / , el Shell lo considera un PATH e intenta resolverlo (entrar en cada directorio especificado para encontrar el comando). – en caso contrario el Shell busca en una tabla (hash table) que contiene los nombres de los comandos que se han encontrado en los directorios especificados en la variable PATH, cuando ha arrancado el Shell. 5.3.2 Aliases ´ Para facilitar la entrada de algunas ordenes o realizar operaciones complejas, los Shells interactivos permiten el uso de aliases. La orden alias permite ver que aliases hay definidos y tambi´ n definir nuevos. Es corriente definir el alias rm = ‘rm -i’, e de esta forma la orden siempre pide confirmaci´ n para borrar un fichero. Si alguna o vez quieres usar rm sin alias s´ lo hace falta poner delante el s´mbolo \ , denominado o ı backslash . Por ejemplo \rm elimina los alias aplicados a rm . Otro ejemplo bastante frecuente (en tcsh/csh) podr´a ser (debido a la complejidad de la ı orden):
csh o tcsh no soportan redirecci´ n de stderr, y si quieres s´ lo redireccionar el stderr es necesario o o hacerlo de esta forma: (comand > /dev/tty) >& fichero
35

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

22

alias ffind ’find . -name \!* -print’ Para emplearlo: ´ ffind tema.txt el resultado es la busqueda recursiva a partir del directorio actual de un fichero que se llame tema.txt, mostrando el camino hasta el mismo. 5.3.3 Comandos propios Los comandos propios o intr´nsecos (Built-In Commands) son aquellos que proporciona ı el propio Shell36 . alias name def asigna el nombre name al comando def. foreach var ( wordlist) commands end La variable var se asigna sucesivamente a los valores de cadena wordlist, y se ejecutan el conjunto de comandos. El contenido de dicha variable puede ser empleado en los comandos: $var. history ´ ´ muestra las ultimas ordenes introducidas en el Shell Algunos comandos relacionados con el Command history son: ´ • !! Repite la ultima orden • !n Repite la orden n-´ sima e ´ • !string Repite la orden mas reciente que empiece por la cadena string ´ • !?string Repite la orden mas reciente que contenga la cadena string ´ • ∧str1∧str2 o !!:s/str1/str2/ (substitute) Repite la ultima orden reemplanzando la primera ocurrencia de la cadena str1 por la cadena str2 ´ • !!:gs/str1/str2/ (global substitute) Repite la ultima orden reemplazando todas las ocurrencias de la cadena str1 por la cadena str2 ´ • !$ Es el ultimo argumento de la orden anterior que se haya tecleado. pushd Cambia de directorio, recordando el directorio actual. popd ´ Retorna al directorio desde donde se hizo pushd la ultima vez. repeat count command Repite count veces el comando command. rehash Rehace la tabla de comandos (hash table) set variable = VALUE
a diferencia de los comandos que provienen de un ejecutable situado en alguno de los directorios de la variable PATH
36

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

23

Asigna el valor de una variable del Shell. set variable Muestra el valor de la variable setenv VARIABLE VALUE Permite asignar el valor de una variable de entorno. source file ´ Ejecuta las ordenes del fichero file en el Shell actual. unset variable Desasigna el valor de una variable del Shell unsetenv VARIABLE VALUE Permite desasignar el valor de una variable de entorno. umask value ´ Asigna la mascara para los permisos por omisi´ n. o unalias name Elimina un alias asignado. 5.3.4 Variables propias del Shell Existe un conjunto de variables denominadas shell variables, que permiten modificar el funcionamiento del Shell. filec (FILE Completion) ´ ES una variable toggle que permite que el Shell complete automaticamente el nombre de un fichero o un directorio37 . Para ello, si el usuario introduce s´ lo unos cuantos o caracteres de un fichero y pulsa el TAB el Shell completa dicho nombre. Si s´ lo existe o una posibilidad, el completado es total y el Shell deja un espacio tras el nombre. En caso contrario hace sonar un pitido38 . Pulsando Ctrl-D el Shell muestra las formas existentes para completar. prompt Es una variable de cadena que contiene el texto que aparece al principio de la l´nea de ı comandos. savehist ´ ´ permite definir el numero de ordenes que se desea se almacenen al abandonar el shell. ´ Esto permite recordar las ordenes que se ejecutaron en la sesi´ n de otro dia. o

5.4 SH y BASH
S´ lo bash puede considerarse un Shell interactivo (:-) ), permitiendo la edici´ n de o o ´ la l´nea de comandos, y el acceso a la historia de ordenes (readline). En uso normal ı (historia y editor de l´nea de comandos) BASH es compatible con TCSH y KSH. ı ´ El modo de completado (file completion) es automatico (usando TAB s´ lo) si el SHELL o es interactivo.
37 38

tcsh permite no s´ lo completar ficheros/directorios sino tambi´ n comandos o e BEEP para los amigos

Manual de UNIX Rev 2.4 5.4.1 Comandos propios del Shell

´ Jon Tombs & Jorge Chavez

24

umask , source , pushd , popd , history , unalias , hash

39

como en TCSH.

help Ayuda interna sobre los comandos del Shell. VARIABLE=VALUE Permite asignar el valor de una variable de entorno. Para que dicha variable sea ”heredada”es necesario emplear: export VARIABLE o bien combinarlas: export VARIABLE=VALUE alias En BASH alias s´ lo sirve para substituci´ n simple de una cadena por otra, o o Por ejemplo: alias ls=’ls -F’. Para crear aliases con argumentos se usan funciones. Las funciones se definen con () y los comandos a realizar entre llaves {}. El empleo de los argumentos se realiza ´ mediante $0. . . N, siendo $# el numero de argumentos. Por ejemplo: setenv() { if [ $# -gt 1 ]; then export \$1=‘‘\$2’’ else env fi } Define una funci´ n igual que el setenv de TCSH. El siguiente defina un funciona equivo alente al alias ffind de TCSH ffind() { if [ $# != 1 ]; then echo Error, falta arguemnto else find . -name $1 -print fi } ´ Las funciones pueden usar todas las ordenes de SH y UNIX y presenta una forma muy potente para construir aliases.

´ 6 Ayuda y Documentacion
Para obtener ayuda sobre comandos de UNIX, se puede emplear la ayuda on-line, en ´ la forma de paginas de manual40 .
´ En BASH/SH la hash table se va generando dinamicamente a medida que el usuario va empleando las ´ ´ ´ ordenes. As´ el arranque del shell es mas rapido, y el uso de orden equivalente ı hash -r casi nunca hace falta 40 En IBM/AIX la mejor orden es info
39

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

25

man comando : proporciona la ayuda sobre el comando deseado. man -k word : proporciona las cabeceras de manuales donde aparezca la palabra word por ejemplo, para leer el manual de los shells, puedes entrar: man sh csh tcsh bash ´ la orden formatea las paginas y te permite leer los manuales en el orden pedido.

7 Procesos
´ ´ ´ En una maquina existen multitud de procesos que pueden estar ejecutandose simultanemente. La mayor´a de ellos no corresponden a ninguna acci´ n realizada por ti y no merecen ı o que les prestes mayor atenci´ n. o Los programas suelen tener uno de estos dos modos de ejecuci´ n : o • foreground: Son aquellos procesos que requieren de la interacci´ n y/o atenci´ n o o ´ del usuario mientras se estan ejecutando, o bien en una de sus fases de ejecuci´ n o ´ (i.e. Introducci´ n de datos ). As´ por ejemplo una consulta de una pagina de o ı manual es un proceso que debe ejecutarse claramente en foreground. • background: Son aquellos procesos que no requieren de la interacci´ n con el o usuario para su ejecuci´ n. Si bien el usuario desear´a estar informado cuando o ı ´ este proceso termine. Un ejemplo de este caso ser´a la impresi´ n de un fichero. ı o Sin embargo esta divisi´ n que a primera vista pueda parecer tan clara y concisa, a o ´ menudo en la practica aparece la necesidad de conmutar de un modo al otro, detenci´ n o de tareas indeseadas, etc. As´ por ejemplo puede darse el caso de que estemos leyendo ı ´ una pagina de manual y de repente necesitemos ejecutar otra tarea. Un proceso viene caracterizado por: • process number • job number ´ ´ Veamos algunas de las ordenes mas frecuentes para la manipulaci´ n de procesos: o • comando & Ejecuci´ n de un comando en el background41 o

´ • Ctrl-Z Detiene el proceso que estuviera ejecutandose en el foreground y lo coloca detenido en el background • Ctrl-C ´ Termina un proceso que estuviera ejecutandose en el foreground

• Ctrl-\ Matar. Termina de forma definitiva un proceso que estuviera eje´ cutandose en el foreground • ps x lista todos los procesos que pertenezcan al usuario, incluyendo los que ´ no estan asociados a un terminal • jobs lista los procesos que se hayan ejecutado desde el shell actual, mostrando el job number
41

Por omisi´ n un comando se ejecuta siempre en el foreground. o

Manual de UNIX Rev 2.4 • fg job number background

´ Jon Tombs & Jorge Chavez

26

pasa a ejecuci´ n en foreground un proceso que se hallase en o

• bg job number pasa a ejecuci´ n en background un proceso que se hallase o detenido con Ctrl-Z ˜ • kill process number env´a una senal42 a un proceso UNIX. ı ˜ En particular kill -KILL env´a la senal de t´ rmino a un programa, pero no ı e ˜ hace falta al ser la senal por defecto. ´ ´ Cuando se intenta abandonar una sesi´ n con algun proceso aun detenido en el o background del Shell, se informa de ello con un mensaje del tipo: There are stopped jobs si no te importa, puedes intentar abandonarlo de nuevo y el Shell matar´ los jobs, a o puedes utilizar fg o bg para terminar/dejarlos.

8 Editores
Un editor es un programa que permite crear y/o modificar un fichero. Existen multitud de editores diferentes, y al igual que ocurre con los shells, cada usuario tiene alguno de su predilecci´ n. o ´ Mencionaremos algunos de los mas conocidos: • vi – El editor standard de UNIX. • emacs – Editor muy configurable en Lisp. Existen multitud de modos para este editor (lector de mail, news, www,. . . ) ´ que lo convierten en un verdadero shell para multitud de usuarios. Las ultimas versiones del mismo permiten la ejecuci´ n desde X-windows o terminal indistino tamente con el mismo binario. Posee un tutorial en l´nea: C-H t ı El fichero de configuraci´ n personalizada es: $HOME/.emacs o • jove – Basado en Emacs, (Jonathan’s43 Own Version of Emacs). Posee tutorial en una utilidad asociada: teachjove El fichero de configuraci´ n personalizada es: $HOME/.joverc o • jed – Editor configurable en S-Lang. Permite la emulaci´ n de editores como EMACS, EDT 44 y Wordstar45 . o Posee una ayuda en l´nea C-H C-H. ı El fichero de configuraci´ n personalizada es: $HOME/.jedrc o ´ • xedit – Editor estandar del X Windows system. • textedit – Standar Editor OpenLook del X Windows system.
42 43

˜ Para ver las senales disponibles entra la orden kill -l ´ El Jonathan este es otro :-) 44 for VMS lusers 45 Para los Turbo C lusers :-)

(l==list).

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

27

• xjed – Versi´ n de jed para el X Windows system. o Presenta como ventaja que es capaz de funcionar en modos (lenguaje C, Fortran, TeX, Spice, Verilog, VHDL,. . . ) reconociendo palabras clave y signos de puntuaci´ n, empleando un colorido distinto para ellos. El fichero de configuraci´ n o o personalizada es el de jed: $HOME/.jedrc ´ Dado que los editores xedit y textedit disponen de menus autoexplicativos, daremos a continuaci´ n unas ligeras nociones sobre el resto. o

8.1 Editores modo EMACS
El editor GNU Emacs es uno de los que tienen mayor aceptaci´ n entre los usuarios o de UNIX, estando disponible bajo licencia GNU GPL46 para una gran cantidad de arquitecturas. Dentro de los “inconvenientes” que presenta es que NO viene por defecto inclu´do en la mayor´a de los sistemas UNIX. ı ı Este editor consta de tres zonas: ´ • La zona de edici´ n: donde aparece el texto que esta siendo editado y que ocupa la o mayor parte de la pantalla. ´ • La zona de informaci´ n: es una barra que esta situada en la penultima l´nea de o ı la pantalla. ´ • La zona de introducci´ n de datos: es la ultima l´nea de la pantalla. o ı EMACS es un editor que permite la edici´ n visual de un fichero (en constraste con el o modo de edici´ n de vi). La mayor´a de los comandos de EMACS se realizan empleando o ı la tecla de CONTROL o la tecla META47 . Emplearemos la nomenclatura: C-key para indicar que la tecla key debe de ser pulsada junto con control y M-key para indicar que ´ la tecla Meta debe de ser pulsada junto a key (en este ultimo caso NO es necesario pul´ sar simultaneamente las teclas ESC y key, pudiendo pulsarse secuencialmente ESC y luego key). ´ A parte de las teclas rapidas que comentaremos, existen comandos que es posible ejecutar por nombre. Ficheros

C-X C-F C-X S C-X C-W C-X C-C C-X C-I

cargar fichero salvar fichero salvar con nombre salir insertar fichero

C-X 2 C-X 1 C-X O C-X B C-G

dividir ventana actual en 2 partes sólo 1 ventana conmutar siguiente ventana conmutar de buffer aborta

La licencia de GNU, da el permiso de libre uso de los programas con su fuentes, pero los autores mantienen el Copyright (tambi´ n conocido como Copyleft) y no es permitido distribuir los binarios sin e acesso a sus fuentes, los programas derivados de dichos fuentes heredan la licencia GNU. 47 Dado que la mayor´a de los teclados actuales no poseen la tecla META se emplea como alternativa ı ESC

46

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

28

´ (NOTA): Para salvar ficheros es valido tanto C-X S como C-X C-S, sin embargo debe ´ evitarse esta ultima opci´ n en los terminales de texto, pues C-S provoca la detenci´ n o o (Stop Scroll) del terminal. Para restaurar el terminal en este caso se emplea C-Q. Comandos de movimiento

C-B C-F C-P C-N C-A C-E M-> M-<

izquierda derecha arriba una línea abajo una ínea principio línea fin de línea fin documento principio documento

M-F M-B C-V M-V C-L

avanza una palabra retrocede una palabra avanza una página retrocede una página refresca pantalla

Debe de comentarse que si el terminal lo acepta es posible el movimiento empleando las teclas de cursor ´ Comandos de insercion y borrado Al ser un editor en modo visual, las modificaciones se pueden hacer en el texto sin ´ necesidad de entrar en ningun modo especial. ´ Definicion de regiones y reemplazo

C-space M-W C-W C-Y M-Y

Comienzo región Copia región Corta región Pega región Rotación regiones
Aparecen las distintas regiones seleccionadas con anterioridad

C-S C-R M-Q

Búsqueda hasta fin texto Búsqueda hasta comienzo texto Búsqueda y sustitución
pide confirmación para sustituir (y/n)

´ El editor conserva un conjunto de las ultimas zonas seleccionadas durante la edici´ n, o pudiendo recuperarse una antigua a pesar de haber seleccionado una nueva zona (LIFO). ´ Definicion de macros

C-X ( C-X ) C-X E

Comienza la definición de una macro Termina la definición de una macro Ejecuta una macro definida

´ Se entiende por macro a una sucesi´ n de ordenes que se desea realizar. o ´ Repeticion ´ ´ Cuando se desee repetir una orden un cierto numero de veces se teclea previamente:

Manual de UNIX Rev 2.4 ESC number

´ Jon Tombs & Jorge Chavez

29

Comandos ´ Aparte de los ya comentados existen muchas otras ordenes que no tienen necesaria´ mente una tecla rapida (bindkey) asociada. Para su ejecuci´ n debe de teclearse previo amente: ESC X y a continuaci´ n en la zona inferior de la pantalla se introduce el comando deseado. o Empleando el TAB se puede completar dicho comando. Es conveniente conocer las secuencias de control basico de emacs (C-P, C-N, CB, C-F, C-Y, C-W, C-K, C-T, C-D) que tambi´ n funcionan en el SHELL, mue ´ chos programas de texto y las ventanas de dialogo de las aplicaciones de X Windows. A su vez, los editores jed, xjed, jove, xedit tambi´ n usan por defecto estas come binaciones.

9 El X windows system
´ El ‘X windows system’ es el sistema estandar de ventanas en estaciones de trabajo. Es ´ corriente que el sistema de ventanas sea arrancado automaticamente cuando tu entras en tu cuenta. En caso contrario, la orden para arrancarlo es startx. En el sistema X-windows deben distinguirse dos conceptos: • server : Es un programa que se encarga de escribir en el dispositivo de v´deo y de ı capturar las entradas (por teclado, rat´ n, etc). Asimismo se encarga de mantener o los recursos y preferencias de las aplicaciones. S´ lo puede existir un server para cada pantalla!! o • client : Es cualquier aplicaci´ n que se ejecute en el sistema X Windows. o ´ No hay l´mite (en principio) en el numero de clientes que pueden estarse ejecuı ´ tando simultaneamente. Los clientes pueden ser locales o remotos. Window Manager (WM) Es un cliente con “privilegios especiales”: Controla el ˜ comportamiento (forma,tamano,..) del resto de clientes. Existen varios, destacando : – fvwm : F* Virtual Window Manager, el instalado por omisi´ n. o – olwm : Open Look Window Manager, propio de SUN – twm : Tab Window Manager, suministrado con la distribuci´ n X11R* del o MIT – mwm : Motif Window Manager, suministrado con el OSF/Motif Toolkit El ‘look and feel’ (o GUI) de X windows es muy configurable, y puede parecer muy distinto, pero esto se debe al WM que se est´ usando, no que las aplicaciones sean e distintas. Para configurar tu sesi´ n es necesario saber qu´ programas estas usando y ver las o e ´ paginas de manual. Los ficheros pricipales son:

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

30

´ .xinitrc o .xsession fichero le´do al arrancar X windows. Aqui se pueden definir los ı programas que aparecen al inicio de tu sesi´ n. o ´ .fvwmrc fichero de configuraci´ n del fvwm. Ver las paginas de fvwm. o ´ .olwmrc fichero de configuraci´ n del olwm. Ver las paginas del manual de olwm. o .Xdefaults Configuraci´ n general de las aplicaciones de X windows. Aqu´ puedes definir los o ı ´ Resources que encontras en los manuales de las aplicaciones de X. .rhosts Fichero no de X windows, pero de permiso de acceso remoto, contiene los nombres ´ de otras maquinas desde donde puedes login sin uso de un password. Ver man rhosts. En caso de que tengas que correr una aplicaci´ n de X que no est´ disponible en la o e ´ maquina que estas usando, eso no representa un problema. Las ordenes necesarias son (por ejemplo para arrancar un xterm remoto):

unix1% xhost +unix2 unix1% rlogin unix2 Password: unix2% setenv DISPLAY unix1:0 unix2% xterm

#permite ventanas desde maquina unix2 #login remoto a otra maquina #Dar tu password (si es necesario) #definir el camino a tu pantalla #arranca la aplicacion en tu pantalla

´ Si todo esta configurado correctamente, es posible que no haga falta dar un password (ver el fichero .rhosts), y en este caso puedes utilizar la orden rcmd para hacelo. Por ejemplo, lo de arriba se har´a con: ı rcmd unix2 xterm ´ Cuando quieres salir, normalmente puedes encontrar la opci´ n SALIR, en un menu o en la zona libre de la pantalla. Es corriente ver errores de tipo ‘IO error’ al salir. Esto es porque has terminado tu sesi´ n antes de terminar todos los programas que o tienes corriendo. Ignora este tipo de error.

´ 9.1 Uso del raton
El rat´ n es un dispositivo esencial en el uso de programas X, sin embargo la funci´ n o o ´ que realiza en cada uno de ellos no esta normalizada. . . Comentaremos la pauta seguida por la mayor´a de las aplicaciones, pero debe tenerse ı presente que es muy frecuente encontrar aplicaciones que no las respetan48 . ´ • Boton izquierdo (LB): Seleccionar. Comienza el bloque de selecci´ n. o ´ • Boton central (MB): Pegar. Copia la selecci´ n en la posici´ n del cursor. o o ´ • Boton derecho (RB): Ajustar. Delimita la selecci´ n. o ´ Existen dos modos para determinar cual es la ventana activa (aquella que recibe las entradas de teclado):
´ Las aplicaciones que son conscientes de un uso anormal y estan relizadas por programadores inteligentes, muestran en pantalla la funci´ n de cada bot´ n cuando son posibles varias alternativas o o
48

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

31

• Focus Follows Mouse: La ventana que contenga al rat´ n es la que es activa. Es el o modo por omisi´ n o • Click To Focus49 : La ventana seleccionada es la activa. El modo que est´ activo depende de la configuraci´ n del Window Manager. e o

9.2 Algunas Aplicaciones X
´ ´ Pasemos a continuaci´ n a enumerar algunas de las aplicaciones X de uso mas comun: o ˜ • xterm: Es un emulador de terminal. Permite seleccionar el tamano de la letra empleada (Ctrl-RB), la adici´ n de una barra de scroll (Ctr-MB), etc. o • xclock: Reloj • xcalc: Calculadora • xedit: Editor de texto ´ • xman: Paginas de Manual ´ • xfig: Editor de graficos vectoriales ´ • xvgr: Manipulador de datos (graficas, procesamiento, etc.) ´ • xspread: Hoja de Calculo • xdbx: Debugger visual ´ ´ • xv: Visualizador de imagenes en diferentes formatos graficos (GIF, TIFF, PPM, ...)

10 Internet
´ En esta secci´ n denominaremos unix1 a la maquina local (desde donde ejecutamos o ´ la orden) y unix2 a la maquina remota (con la que interaccionamos). Ambos son los ´ hostnames de las respectivas maquinas. Existen algunos conceptos que previamente debemos comentar: ´ • IP-number: es un conjunto de 4 numeros separados por puntos (p.e. 150.214.140.16) ´ ´ que se asocia a cada maquina. No puede haber dos maquinas conectadas en la ´ misma red con el mismo numero. ´ • hostname Es el nombre que tiene asociada la maquina (p.e. bart). A este ˜ nombre se le suelen anadir una serie de sufijos separados por puntos que consti´ tuye el denominado dominio (p.e. bart.esi.us.es). Una maquina por tanto ´ puede tener mas de un nombre reconocido (se habla en este caso de alias). Se denomina resolution a la identificaci´ n entre un hostname y el IP-number correo spondiente. La consulta se realiza inicialmente en el fichero /etc/hosts, donde ´ ´ normalmente se guardan las identificaciones de las maquinas mas comunmente
49

Es el modo empleado en Microsoft Windows

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

32

empleadas. En caso de que no se lograse se accede al servicio DNS (Domain Name Service), que permite la identificaci´ n (resolution) entre un hostname y un o IP-number. Deben hacerse un par de observaciones: ´ – En el caso de que un conjunto de maquinas est´ n empleando NIS (tambi´ n e e conocido como yellow pages), el acceso al fichero /etc/hosts s´ lo se realiza o ´ en el server de este servicio cuando se rehacen las paginas de NIS. – En el caso de algunos sistemas operativos50 el acceso al servicio DNS (si se habilita) se antepone al acceso al fichero /etc/hosts • mail-address Es el nombre que se emplea para enviar correo electr´ nico. Este o ´ nombre puede coincidir con el nombre de una maquina, pero se suele definir ´ como un alias (con objeto de que la direcci´ n no deba de cambiarse si la maquina o se estropea).

10.1 Acceso a la red
´ Existen muchos programas para la conexi´ n de la red, los mas usados son: o • rlogin -l nombre unix2 ´ (Remote login), hace un login a la maquina unix2 como el usuario nombre (por defecto, sin los argumentos -l nombre rlogin usa el nombre de tu cuenta local). Normalmente rlogin pide el password de la cuenta remota, pero con el uso del fichero .rhosts o /etc/hosts.equiv esto no es siempre necesario. • rsh -l nombre unix2 orden ... ´ (remote shell), ejecuta la orden orden en la maquina unix2 como usuario nom´ bre. Es necesario que puedas entrar en la maquina remota sin password para ejecutar una orden remota. ´ Sin especificar orden actua como rlogin. • rcmd -l nombre unix2 orden ... ´ ´ Actua como la orden anterior pero ademas: – redirecciona el stdout y stderr a /dev/null – la aplicaci´ n se ejecuta en background remotamente o – el shell que se arranca remotamente posee las variables TERM y DISPLAY del shell local (su utilidad es arrancar aplicaciones X-Windows remotas) • rcp unix2:/path/file new ´ (remote copy), copia el fichero con camino /path/file de la maquina remota ´ unix2 al fichero new. Tambi´ n se puede dar como destino una maquina remota e con un fichero local. El orden rcp soporta los mismos argumentos de cp. • telnet unix2 (tel network), similar a rlogin unix2 pero permite specifica el puerta en conexi´ n o ´ en la maquina remota.
50

AIX de IBM c´ mo no. . . o

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

33

• talk usuario1@unix2 ´ Intenta hacer una conexi´ n para hablar con el usuario1 en la maquina unix2. o Existen varias versiones de talk en los diferentes sistemas operativos, de forma ´ que no siempre es posible establecer una comunicaci´ n entre maquinas con SO’s o diferentes. Existe un comando alternativo: ytalk, que pretende ser compatible con todas las ´ versiones de talk, permitiendo asimismo la intervenci´ n de mas de dos personas o en la conexi´ n. o • ftp unix2 ´ (file transfer protocol) aplicaci´ n para copiar ficheros entre maquinas de una red. o ´ ftp exige un nombre de cuenta y password para la maquina remota. Algunas de ´ las opciones mas empleadas (una vez establecida la conexi´ n) son: o – bin: Establece el modo de comunicaci´ n binario. Es decir, transfiere una o imagen exacta del fichero. – asc: Establece el modo de comunicaci´ n ascii. Realiza las conversiones neceo ´ sarias entre las dos maquinas en comunicaci´ n. Es el modo por defecto. o ´ – cd: Cambia directorio en la maquina remoto. ´ – lcd: Cambia directorio en la maquina local. – ls: Lista el directorio remoto. – !ls: Lista el directorio local. ´ – prompt : No pide confirmaci´ n para transferencia multiple de ficheros. o ´ – get rfile [lfile] : transfiere el fichero rfile de la maquina remota ´ ´ a la maquina local denominandolo lfile. En caso de no suministrarse el ´ segundo argumento supone igual nombre en ambas maquinas. ´ – send lfile [rfile] : transfiere el fichero lfile de la maquina local ´ ´ a la maquina remota denominandolo rfile. En caso de no suministrarse ´ el segundo argumento supone igual nombre en ambas maquinas. Tambi´ n e puede usarse put. ´ – mget rfile : igual que get, pero con mas de un fichero (rfile puede ´ contener caracteres comod´n) ı ´ – mput lfile : igual que put, pero con mas de un fichero (lfile puede ´ contener caracteres comod´n). ı ´ Las versiones de ftp var´an mucho entre las diferentes maquinas y sistemas ı ´ ´ operativos. Para mas informaci´ n ver paginas de manual. o

10.2 E-Mail
El correo electr´ nico (E-mail) es un servicio para el envio de mensajes entre usuaro ´ ´ ios, tanto de la misma maquina como de diferentes maquinas. Existen multitud de aplicaciones que permiten el uso de este servicio, dentro de los que destacamos: • mail • elm

Manual de UNIX Rev 2.4 • mailtool • xmailtool 10.2.1 Direcciones de mail

´ Jon Tombs & Jorge Chavez

34

Para mandar un E-mail es necesario conocer la direcci´ n de dicha persona. Esta direco ci´ n consta de dos campos que se combinan intercalando entre ellos el @: o user@domain ´ • user: es la identificaci´ n del usuario (i.e. login) en la maquina remota. o ´ • domain: es la maquina51 donde dicha persona recibe correo. Si el usuario es local no es necesario colocar el campo domain (ni tampoco el @). 10.2.2 Nomenclatura Veamos algunos conceptos relacionados con el correo electr´ nico: o • Subject : Es una parte de un mensaje que piden los programas al comienzo y sirve como t´tulo para el mensaje. ı ´ • Cc (Carbon Copy): Permite el env´o de copias del mensaje que esta siendo editado ı a terceras personas. ˜ • Reply : Cuando se env´a un mensaje en respuesta a otro se suele anadir el ı comienzo del subject: Re:, con objeto de orientar al destinatario sobre el tema que se responde. Es frecuente que se incluya el mensaje al que se responde para facilitar al destinatario la comprensi´ n de la respuesta. o • Forward : Permite el env´o de un mensaje (con modificaciones o sin ellas) a una ı tercera persona. • Forwarding Mail : Permite a un usuario que disponga de cuentas en varias ´ ´ maquinas no relacionadas, de concentrar su correo en una cuenta unica52 . Para ello basta con tener un fichero $HOME/.forward que contenga la direcci´ n donde o desea centralizar su correo. • Mail group : Un grupo de correo es un conjunto de usuarios que reciben el correo ´ dirigido a su grupo. Existen ordenes para responder a un determinado correo recibido por esa v´a de forma que el resto del grupo sepa lo que ha respondido un ı miembro del mismo. • In-Box : Es el fichero donde se almacena el correo que todav´a no ha sido le´do ı ı por el usuario. Suele estar localizado en /var/spool/mail/$USER .
´ A menudo es frecuente que si una persona tiene acceso a un conjunto de maquinas, su direcci´ n de o ´ correo no corresponda con una maquina. . . 52 Este comando debe usarse con conocimiento pues en caso contrario podr´a provocar un bucle inı definido y no recibir nunca correo . . .
51

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

35

• Folder (carpeta): Es un fichero que contiene un conjunto de mensajes. Suele ser una buena costumbre disponer de diferentes folders para las distintas personas o temas. . . • Mailer-Daemon : Cuando existe un problema en la transmisi´ n de un mensaje o se recibe un mensaje proviniente del Mailer-Daemon que indica el problema que se ha presentado. • 8bit transfer & uuencode-uudecode : Hoy d´a, casi todos los sitios pueden ı recibir correctamente correo de 8bit (p.e. letras con tildes). Pero muchos sistemas ˜ mantienen l´mites de tamano de l´neas y/o mensajes. Entonces para mandar ı ı ´ ficheros binarios (ejecutables, datos, imaganes,. . . ), existen las ordenes uuencode y uudecode cuya funci´ n es convertir el fichero a transmitir en otro empleo ando s´ lo 7bits ASCII y l´neas de longitud acotada a 62 caracteres. De esta forma o ı se garantiza una transmisi´ n sin problemas. o ´ 10.2.3 aplicacion mail ´ Es posiblemente la aplicaci´ n mas simple. Para la lectura de mail teclear simplemente: o mail y a continuaci´ n aparece un ´ndice con los diferentes mensajes recibidos. Cada mensaje o ı ´ tiene una l´nea de identificaci´ n con numero de orden. Para leer un mensaje basta ı o ´ teclear su numero y a continuaci´ n RETURN. o Para enviar un mensaje: mail ADDRESS se pregunta por el Subject: y a continuaci´ n se introduce el mensaje. Para acabar o ´ se teclea s´ lo un punto en una l´nea o bien Ctr-D. Por ultimo se pregunta por Cc: o ı (Carbon Copy). Es posible personalizar el funcionamiento mediante el fichero $HOME/.mailrc. Para enviar un fichero de texto a trav´ s del correo se suele emplear la redirecci´ n de e o entrada: mail ADDRESS < FILE ´ 10.2.4 aplicacion elm elm es un comando interactivo para el acceso al correo electr´ nico. Una vez dentro o del programa, se muestran las l´neas de mensaje: ı
Folder is ’mbox’ with 5 messages [ELM 2.4 PL24]

->

1 2 3 5

Sep Oct Oct Jul

30 4 6 6

Carmen Lopez - Sun Carmen Lopez - Sun Carmen Lopez - Sun aramos@Spain.Sun.C

(37) (32) (57) (48)

Mas cambios Re: Mas cambios Mas cambios 1a OFERTA

|=pipe, !=shell, ?=help, <n>=set current to n, /=search pattern a)lias, C)opy, c)hange folder, d)elete, e)dit, f)orward, g)roup reply, m)ail, n)ext, o)ptions, p)rint, q)uit, r)eply, s)ave, t)ag, u)ndelete, or e(x)it Command:

Manual de UNIX Rev 2.4 ´ Las teclas de uso mas frecuente son:

´ Jon Tombs & Jorge Chavez

36

• Ctrl-N Movimiento al mensaje siguiente • Ctrl-P Movimiento al mensaje anterior • Return Lectura del mensaje apuntado • q (Quit) salir de elm almacenando las modificaciones que se hayan realizado sobre el folder actual • x (eXit) salir de elm sin almacenar las modificaciones realizadas. • d (Delete) Borrado del mensaje seleccionado • n Lectura del mensaje apuntado y avanzar al siguiente • r (Reply) Responder al mensaje actual • g (Group reply) Responder al grupo que ha enviado el mensaje actual • m (Mail) enviar un mensaje • f (Follow up) enviar el mensaje actual a una tercera persona, pudiendo hacer ´ modificaciones sobre el texto (comentandolo por ejemplo) • b (Bounce) enviar el mensaje actual a una tercera persona sin realizar modificaciones. ´ • a (Alias) Entrar en el menu de alias. ´ Desde este se pueden definir: – abreviaciones para direcciones de uso frecuente – agrupaciones de direcciones bajo un mismo nombre

´ Para su definici´ n (una vez que se este en el menu de alias), es necesario editar el o fichero de alias pulsando la tecla e y emplear el formato: Abrev:Descrip Donde: ´ ´ – Abrev: Es la abreviaci´ n que se empleara desde el menu principal de elm o para usar dicho alias – Description: Es una descripci´ n del contenido de dicho alias. Puede cono tener espacios en blanco para separar las diferentes palabras. – Address: Es la direcci´ n (o direcciones) de correo a que hace referencia el o ´ alias. En caso de ser direcciones, estaran separadas por comas. Una vez que se termine de editar dicho fichero, elm compila dicho fichero y comprueba que su sintaxis es la correcta. • e (Edit folder) Permite editar el folder actual. El uso de esta opci´ n requiere o cierto conocimiento del formato del fichero, por lo que no deber´an emplearlo ı los usuarios principiantes53 . Existe una ayuda en l´nea al pulsar la tecla ? . Es posible la personalizaci´ n modifiı o cando el fichero $HOME/.elm/elmrc
53

´ aunque la experiencia dice que es la tecla mas pulsada por los novatos

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

37

10.3 News

Qu´ es Usenet e
´ Usenet es un conjunto de maquinas que intercambian art´culos asociados a uno o ı ´ mas identificadores denominados newsgroups.

Diversidad de Usenet
La definici´ n dada anteriormente puede dar la impresi´ n de algo poco definido. Pero o o ´ es que no es posible la generalizaci´ n dado que dentro de Usenet estan: agencias guo bernamentales, universidades, empresas en general, etc. Cada administrador controla su distribuci´ n local, pero nadie gobierna por encima de su dominio. . . o

Usenet no es una democracia
Como Usenet no es una organizaci´ n y no existe una autoridad central, es dif´cil que o ı exista una democracia. Aunque pueda parecer contradictorio, para la creaci´ n de un o ´ nuevo grupo, se procede a una votacion con objeto de determinar el apoyo que pueda tener la creaci´ n de dicho grupo. . . o Existen grupos locales, es decir, cuya distribuci´ n no es mundial. o ´ Estos newsgroups abarcan los temas mas diversos. Los nombres de los news´ ´ groups estan formados de forma jerarquica, as´ por ejemplo: comp.lang.c es un ı ´ grupo sobre computaci´ n, particularizando en lenguajes, y mas concretamente en lenguao ´ je C. Las siete categor´as (campo mas significativo del grupo) principales son: ı • comp: Topics of interest to both computer professionals and hobbyists, including topics in computer science, software sources, and information on hardware and software systems. • misc: Group addressing themes not easily classified into any of the other headings or which incorporate themes from multiple categories. Subjects include fitness, job-hunting, law, and investments. • sci: Discussions marked by special knowledge relating to research in or application of the established sciences. • soc: Groups primarily addressing social issues and socializing. Included are discussions related to many different world cultures. • talk: Groups largely debate-oriented and tending to feature long discussions without resolution and without appreciable amounts of generally useful information. • news: Groups concerned with the news network, group maintenance, and software. • rec: Groups oriented towards hobbies and recreational activities • alt: True anarchy; anything and everything can and does appear; subjects include sex, the Simpsons, and privacy. Son muchas las aplicaciones que permiten la lectura de News: • rn : Read News

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

38

• trn : Threaded Read News. ´ Permite el seguimiento de las respuestas a un art´culo a trav´ s de su arbol de ı e ´ respuesta. De esta forma se entiende de una forma mas clara la discusi´ n que se o origina. • strn : Scanning Threaded Read News. Es una versi´ n extendida de trn o • xrn : Interface X-Windows para rn • xvnews : Interface Xview para rn • slrn : Aplicaci´ n en S-Lang para leer noticias o ´ 10.3.1 aplicacion rn ´ Cuando se arranca la aplicaci´ n se pueden leer todos los newsgroups a los que uno esta o ´ substrito. Los comandos mas empleados son: • Space: ejecutar acci´ n por defecto, normalmente la acci´ n deseada54 o o • h: Help ´ • q: quit el art´culo/grupo actual o bien la aplicaci´ n segun el nivel en el que nos ı o hallemos. ´ • n: siguiente pagina ´ • p: pagina anterior • g newsgroup: suscribir al newsgroup mencionado • l pattern: busca todos los grupos que contengan la cadena pattern • u: desuscribir del newsgroup actual • c (catch up): marcar todos los art´culos como le´dos ı ı • k (kill): marcar todos los art´culos con el mismo subject como le´dos. ı ı ˜ • C: Cancelar un post del que uno es dueno, tanto si uno se arrepiente o bien si su 55 . contenido ya no tiene utilidad Todos estos comandos son comunes a trn y strn.
rn acierta normalmente lo que quieres hacer. . . La forma ”elegante”de hacerlo es rellenar el campo expires:, de forma que se autodestruya al llegar a dicha fecha
55 54

Manual de UNIX Rev 2.4 ´ 10.3.2 aplicacion slrn

´ Jon Tombs & Jorge Chavez

39

´ o Es una de las aplicaciones mas c´ modas y sencillas de usar desde un terminal de texto, inspirada en el lector GNUS de Emacs. ´ Basicamente dispone de dos modos: ´ ´ • Modo de seleccion de grupos: En caso de estar suscrito a algun grupo, si se coloca el cursor sobre un grupo y se pulsa el Return se cambia de modo y se pasa a leer dicho grupo. – q: salir de slrn – g newsgroup: Permite la lectura de un grupo newsgroup, del que se conoza el nombre completo. ´ – L: permite la busqueda de un grupo que contenga una cadena (que se introduce interactivamente a continuaci´ n). o – s: suscribir al grupo donde est´ el cursor e – u: de-suscribir del grupo donde est´ el cursor e – p: comenzar un art´culo ı • Modo de lectura de un grupo: En este modo la pantalla se divide en dos partes: en la superior se hayan los nombres de los art´culos y en la inferior se ı encuentran sus correspondientes contenidos. Los cursores permiten moverse por ˜ los diferentes art´culos y al pulsar Return se lee el art´culo senalado. ı ı – q: salir al modo de selecci´ n de grupo o ´ – Space: siguiente pagina del art´culo ı ´ – Del: pagina previa del art´culo ı – f: continuar con el art´culo donde est´ el cursor (follow-up) ı e – w: almacenar el art´culo en un fichero ı – u: marcar como no le´do ı ˜ – ESC Ctrl-C: Permite cancelar un post del que uno es dueno. Dispone de una ayuda en l´nea accesible mediante la tecla ?. ı

10.4 ftp Anonymous
Existen nodos que permiten el acceso por ftp a usuarios que no disponen de cuenta ´ en dichas maquinas. Para ello se emplea como login de entrada el usuario anonymous (o ftp) y como passwd la direcci´ n de E-mail personal. Existen servidores o ´ que no aceptan conexiones desde maquinas que no est´ n dadas de alta en el servicio e de nombre (DNS), as´ como algunas que no permiten la entrada a usuarios que no se ı identifican correctamente. Dada la sobrecarga que existe, muchos de los servidores ´ ´ tienen limitado el numero de usuarios que pueden acceder simultaneamente.

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

40

10.5 Archie
´ Este servicio56 se cre´ con objeto de realizar una busqueda de ficheros por los servio dores de ftp anonymous de todo el mundo. Es conveniente conocer el nombre del fichero ´ buscado, pues la cantidad de ficheros que pueden resultar de una busqueda “poco espec´fica” es enorme57 . ı Para acceder en modo interactivo a dicho servicio uno debe conectarse a un servidor de archie empleando como login archie. ´ Una vez establecida la sesi´ n existe una serie de comandos para ejecutar la busqueda: o • quit: Abandonar la sesi´ n. o • help subject: ayuda sobre subject • set : Modifica las variables de entorno. Algunas de las mas empleadas son: ´ – search: Establece el modo de la busqueda ∗ sub: subcadena (case insensitive) ∗ subcase: subcadena (case sensitive) ´ ´ ∗ exact: cadena (case sensitive). El mas rapido para cuando se sabe lo que se busca. . . ´ ∗ regex: permite la busqueda de subcadenas empleando regular expressions: · ˆ Subcadena al comienzo (Ejemplo) ˆgs261 Busca ficheros que comiencen por gs261 · $ Subcadena al final (Ejemplo) gif$ Busca ficheros que terminen en gif · .* cualquier subcadena (Ejemplo) gs.*tgz Busca ficheros que contengan las subcadenas gs y tgz (y en ese orden dentro de la cadena) – pager: habilita el paginador • prog expression: permite buscar en la base de datos una determinada cadena. La interpretaci´ n de dicha cadena depende del valor de la variable search. o ´ • mail Mail-Address: permite que el resultado de la busqueda se env´e por correo ı a la direcci´ n especificada. o En la actualidad existen diferentes formas de acceder al servicio archie58 :
creado por un grupo de la Universidad McGill de Canada En la actualidad hay del orden de unos 800 servidores FTP anonymous, alrededor del mundo. Con´ teniendo mas de 1 mill´ n de ficheros diferentes (cerca de 50 Gbytes de informaci´ n). Los servidores se o o suelen actualizar una vez al mes. 58 ˜ archie.rediris.es es un ejemplo de un servidor de Archie en Espana.
57 56

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

41

• mediante telnet interactivo, que es el anteriormente comentado. • mediante clientes de Xwindows (xarchie). • mediante peticiones por E-mail

10.6 WWW
WWW son las siglas de World-Wide Web Este servicio permite el acceso a informaci´ n entrelazada (dispone de un texto donde un t´ rmino puede conducir a otro texto): o e ´ hyperlinks. Los ficheros estan realizados en un lenguaje denominado html. Para acceder a este servicio es necesario disponer de un lector de dicho lenguaje. Destacan actualmente: • lynx: lector en modo texto Lynx es un visor en modo texto de la WWW. Eso ´ significa que podras acceder a cualquier documento, pero sin disfrutar de las ´ ˜ ´ ´ imagenes que lo acompanan. Aun as´, es un visor muy potente que te permitira ı usar forms (impresos), escribir correo o leer las news, por ejemplo. El funcionamiento es muy sencillo. Veamos algunas de las teclas: – q: salir de lynx – Flecha arriba, flecha abajo: Desplaza el cursor por los diferentes enlaces del documento. – Flecha derecha: Avanza un enlace, te lleva hacia donde indique el enlace. ´ – Flecha izquierda: vuelve atras un enlace59 . ´ – Tecla de borrado (backspace): Muestra la historia de las paginas que has visitado hasta ahora, y te permite acceder a cualquiera de ellas con rapidez. – g: Te permite saltar directamente a una direcci´ n de WWW. o ˜ – Tecla ’k’: Muestra una gu´a que te ensena la utilidad de cada tecla. ı – h (Help): Imagina para qu´ sirve. :-) e ´ – i: Recupera una pagina con direcciones potencialmente interesantes. ˜ – v: Te ensena tus bookmarks60 . ˜ – a: Anade un bookmark a tu archivo personal. N´ tese la diferencia con o Netscape o Mosaic. Mientras que estos apuntaban la pagina actual, Lynx ˜ apunta la direcci´ n que senala el cursor. o – r: Quita un bookmark de tu archivo. ´ – =: Permite conocer la direccion URL de la pagina actual o del enlace (si el ´ ´ cursor esta encima del el). – Ctrl-G: Aborta la conexi´ n actual, sin acabar con la sesi´ n (como ocurre al o o pulsar Ctr-C). – Ctrl-R: Recarga del documento
”Desanda”el camino que has recorrido ´ Piensa en la WWW como si fuera una gran biblioteca. En ciertas ocasiones querras recordar d´ nde o ´ estaban ciertas paginas que te interesan. Para eso sirve un ’bookmark file’.
60 59

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

42

´ • netscape: lector en modo grafico de uso muy extendido, que soporta su propio conjunto de instrucciones html • Mosaic • arena

´ 11 Impresion
Cuando se quiere obtener una copia impresa de un fichero se emplea el comando lpr. ´ lpr file – Env´a el fichero file a la cola de impresi´ n por defecto. Si la cola esta ı o ´ activada, la impresora lista y ningun trabajo por encima del enviado, nuestro trabajo ´ ´ sera procesado de forma automatica. A menudo existen varias posibles impresoras a las que poder enviar los trabajos. Para seleccionar una impresora en concreto (en vez de la de por defecto) se emplea el modificador: lpr -Pimpresora. Siendo impresora el nombre l´ gico asignado a esta otra impreo sora61 . ´ Otras ordenes para la manipulaci´ n de la cola de impresi´ n son: o o • lpq [-Pprinter] – Permite examinar el estado de una determinada cola ( para ´ ver la cantidad de trabajos sin procesar de esta por ejemplo). • lprm [-Pprinter] jobnumber – Permite eliminar un trabajo de la cola de impresi´ n o ´ ´ Uno de los lenguajes de impresi´ n grafica mas extendidos en la actualidad es o PostScript62 . Por ello muchas de las impresoras actuales s´ lo admiten la impresi´ n o o ´ en dicho formato. En caso de desear imprimir un fichero en ascii debera previamente realizarse la conversi´ n a PostScript empleando la orden mpage: o mpage -2 file.txt | lpr ´ Esta orden env´a a la impresora el fichero ascii file.txt formateado a 2 paginas por hoja. ı ´ Hay muchas versiones de UNIX y no todas son iguales. Es posible que en las maquinas ´ encuentres que algunas ordenes no existen, no se han instalado o tienen opciones dis´ tintas. Los nombres de impresoras dependen de la instalaci´ n, pedir siempre cuales o ´ estan disponibles y qu´ formato de entrada aceptan. e Un fichero PostScript puede ser visualizado antes de imprimirse mediante los comandos: ´ • gs [file].ps : abre una ventana con el contenido de cada pagina del documen´ to ( no es posible retroceder en las paginas ) ´ • ghostview [file].ps : analogo al anterior, pero permite diversas opciones (ampliaci´ n de una zona, redimensionamiento de la ventana, diversos formatos o de papel, etc) as´ como la posibilidad de recorrer el documento en ambas direcı ciones.
Para recibir una lista de las posibles impresoras de un sistema as´ como su estado se puede emplear ı la orden lpc status all 62 PostScript es un lenguaje que permite importaci´ n/exportaci´ n de figuras entre diferentes aplio o caci´ nes. o
61

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

43

´ 12 Compresion
A menudo es frecuente la necesidad de crear un fichero comprimido debido al excesivo ˜ ´ tamano de este, o bien crear un backup de una determinada estructura de directorios para almacenarlos en diskettes. Se comentan a continuaci´ n una serie de comandos o que permiten ejecutar dichas acciones: 1. compress [file]: comprime el fichero, creando el fichero [file].Z 2. uncompress [file.Z]: descomprime el fichero, creando el fichero [file]63 3. zcat [file].Z: muestra por el stdout el contenido descomprimido del fichero (sin destruir el original). ´ Estos compresores son los estandars en UNIX, pero alternativamente pueden usarse: gzip/gunzip : compresor/descompresor de GNU que proporciona un mejor ratio de compresi´ n que compress64 . La extensi´ n empleada es [file].gz o [file].z o o En caso que se desee crear un fichero comprimido con una estructura de directorios debe ejecutarse la orden: tar cvf - [directorio] | compress > [directorio].tar.Z o bien: tar cvf - [directorio] | gzip > [directorio].tgz Y para descomprimir: zcat [directorio].tar.Z | tar xvf o bien: gunzip -c [directorio].tar.Z | tar xvf Para ver el contenido del fichero comprimido: zcat [directorio].tar.Z | tar tvf - | more o bien: gunzip -c [directorio].tar.Z | tar tvf - | more Por comodidad se han definido unos alias de estas secuencias de comandos: • pack [directorio]: crea el fichero [directorio].tgz que almacena la estructura de directorios debajo del directorio [directorio] comprimido empleando el compresor gzip. • unpack [directorio].tgz: crea la estructura de directorios contenida en el fichero [directorio].tgz • packinfo [directorio].tgz: crea un fichero [directorio].tgz.memo que contiene la informaci´ n sobre los archivos contenidos en el fichero comprimido. o ´ Existe un comando analogo a more denominado less (m), que permite visualizar (pag´ inando) el contenido de un fichero, incluso si este se haya comprimido. ´ ´ De todas estas ordenes existen paginas de manual disponibles por si es necesario consultar las opciones disponibles.
63 64

Tanto esta orden como la anterior, destruyen el fichero original Los ficheros no son compatibles con pkzip/pkunzip de MSDOS, existe zip/unzip que s´ lo son ı

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

44

´ 13 Compilacion y Debugging
13.1 cc & gcc
´ El comando para usar el compilador de lenguaje C es cc. Su uso mas elemental es: cc FILENAME.c que compila el fichero FILENAME.c y crea un fichero ejecutable que se denomina a.out por omisi´ n. o Existen diversas opciones que comentaremos a continuaci´ n: o • -c realiza la compilaci´ n pero no el link: o cc -c FILENAME.c genera el fichero FILENAME.o que es c´ digo objeto. o • -o EXENAME define el nombre del ejecutable creado (en lugar del defecto a.out): cc -o OUTPUTFILE FILENAME.c • -lx incluye una librer´a en la compilaci´ n: ı o cc FILENAME.c -lm ´ En este caso se compila con la librer´a matematica (libm.a). ı • -g permite el uso de un debugger • -O optimizaci´ n o Otro compilador generalmente disponible es gcc (the GNU C compiler). Su uso es ´ aproximadamente el mismo que el de cc y con las mismas opciones de este. La principal diferencia es que gcc es compatible ANSI (mientras que cc solo soporta la versi´ n o Kernighan & Ritchie). Una de las opciones de que dispone gcc es: ´ -Wall que detecta posibles errores/warnings en el c´ digo C que esta siendo compilao do.

13.2

make & Makefile

´ Frecuentemente los programas estan compuestos por diferentes subrutinas que se hayan contenidas en diferentes ficheros. La orden de compilaci´ n necesaria puede o ser engorrosa, y a menudo no es necesario volver a compilar todos, los ficheros, sino s´ lo aquellos que hayan sido modificados. o UNIX dispone de una orden denominada make que evita los problemas antes mencionados y permite el mantenimiento de una librer´a personal de rutinas. Este comanı ´ do analiza qu´ ficheros de c´ digo han sido modificados despu´ s de la ultima compie o e laci´ n y evita recompilaciones innecesarias. o ´ En su uso mas simple s´ lo es necesario suministrar una lista de dependencias y/o ino strucciones a la orden make en un fichero denominado Makefile. Una dependencia es la relaci´ n entre dos ficheros de forma que un fichero se considera actualizado siempre o ´ que el otro tenga una fecha de modificaci´ n inferior a este. o Por ejemplo si el fichero file.c incluye el fichero file.h, no se puede considerar actualizado el fichero file.o si el fichero file.c o el fichero file.h ha sido mod´ ificado despu´ s de la ultima compilaci´ n. Se dice que el fichero file.o depende de e o file.c y el fichero file.c depende de fichero file.h.

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

45

La sintaxis para establecer una dependencia es: FILE1: DEP1 DEP2 ... instrucciones para generar FILE1 FILE2: DEP3 DEP4 ... instrucciones para generar FILE2 Las instrucciones deben de estar indentadas por un tabulador65 . Por ejemplo un fichero Makefile podr´a tener una apariencia como: ı file.o: file.c file.h cc -c file.c ´ En este caso se comprueba las fechas de las ultima modificaci´ nes de los fichero file.c o ´ y file.h, si estas fecha son mas recientes que la del fichero file.o se procede a la compilaci´ n. El comando make se puede suministrar con un argumento, que indica la o etiqueta situada a la izquierda de los dos puntos. As´ en el ejemplo anterior podr´a ı ı invocarse make file.o. make tiene un mecanismo para la creaci´ n del Makefile. Los macros se definen al o comienzo con una sintaxix: MACRO1= definici´ n macro1 o MACRO2= definici´ n macro2 o Una macro puede ser utilizada en el resto del Makefile colocando un $ delante de ´ ´ el. Por defecto make sabe las ordenes y dependencias (reglas) para compilar un fichero *.c y producir un fichero *.o, entonces basta especificar solamente los dependecias que make no pueda adivinar de los nombres de los ficheros, p.e.: OUTPUTFILE OBJS INCLUDESMISC INCLUDESFILE LIBS = = = = = prog prog.o misc.o aux.o misc.h aux.h foo.h $(INCLUDESMISC) -lmylib

prog.o: $(INCLUDESFILE) misc.o: $(INCLUDESMISC) aux.o: aux.h $(OUTPUTFILE): $(OBJS) cc $(OBJS) -o $(OUTPUTFILE) $(LIBS)

13.3

dbx debugger

dbx es una utilidad para depuraci´ n de errores (debugging) de programas escritos o en C, Pascal y Fortran 77. Permite la localizaci´ n de problemas en un programa al o permitir una ejecuci´ n paso a paso (o bien indicando puntos de parada) y la observaci´ n o o de las variables del programa. Para emplear dbx es necesaria la compilaci´ n con la opci´ n -g que genera la tabla de o o s´mbolos necesaria. La ejecuci´ n del debugger se realiza mediante: ı o dbx FILENAME
65

¡ocho espacios no es igual a un tabulador para make!

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

46

Siendo FILENAME el nombre del ejecutable deseado. Veamos a continuaci´ n algunos o ´ de los comandos mas empleados: • run comienza/continua la ejecuci´ n hasta donde se haya definido la parada (o hasta o el fin de la ejecuci´ n si no se han definido condiciones de parada) o • rerun comienza la ejecuci´ n desde el principio o • stop at LINENUMBER detiene la ejecuci´ n en la l´nea LINENUMBER o ı • stop in PROCEDURE detiene la ejecuci´ n cuando se alcance la rutina PROCEDURE o • stop VARIABLE detiene la ejecuci´ n cuando se modifique el valor de la variable VARIABLE o • step N ejecuta las N siguientes l´neas (una s´ la si no se proporciona argumento), enı o trando en las funciones • next N ejecuta las N siguientes l´neas (una s´ la si no se proporciona argumento), sin ı o entrar en las funciones • list FIRTS, LAST muestra las l´neas comprendidas entre FIRST y LAST ı • print VARIABLE muestra el valor de VARIABLE en el punto actual de ejecuci´ n o • assign VARIABLE=VALUE asigna a VARIABLE el valor VALUE en el punto actual de ejecuci´ n o • whatis VARIABLE muestra la declaraci´ n de VARIABLE o • where N ´ muestra las N funciones activas en la pila (es muy util cuando se ha producido un core, esta orden muestra las funciones que han sido llamadas cuando se ha producido) • quit salida de dbx Tambi´ n pueden emplearse condicionales if (con sintaxis de C) para los comandos e step. Por ejemplo: stop at 120 if a==42 indica que debe detener la ejecuci´ n en la l´nea 120 si la variable a tiene el valor de o ı 42 en este punto. Es posible la definici´ n de alias. Por ejemplo: o

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

47

alias s step Estos alias constituyen una personalizaci´ n y se suelen almacenar en el fichero $HOME/.dbxinit, o que es le´do al comienzo de la ejecuci´ n de dbx. ı o Existen otros debuggers que citaremos a continuaci´ n: o • gdb (GNU’s debugger) es un debugger muy potente s´ lo para programas en C. o ´ ˜ ´ Funciona de forma analoga a dbx, pero anade una serie de ordenes adicionales. • xgdb versi´ n X-Windows del anterior. o

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

48

14 FAQ (Frecuently Asked Questions)
´ Colecci´ n de preguntas que esta prohibido hacer: o 1. He borrado un fichero sin copia: Si borras un fichero por error, y no tienes un ‘backup’ ¡¡es imposible recuperarlo!! ´ 2. Que significa el mensaje XXXX ?: • Error: Can’t open display: Falta ejecutar la orden : setenv DISPLAY [hostname]:0 • Xlib: connection to "[hostname]:0.0"refused by server Xlib: Internal error during connection authorization check Error: Can’t open display: [hostname]:0 Falta la orden: xhost + [client hostname] • vmunix: NFS server not responding still trying ´ ´ El disco duro importado por la maquina no esta actualmente accesible por red, debido a un problema de comunicaciones (normalmente alguien ha abier´ to la red en algun sitio ¡¡sin avisar!!). La soluci´ n es esperar... o • csh% hspice rc.cir > rc.out rc.out: file exists ´ Se esta intentando redireccionar sobre un fichero que ya existe, una soluci´ n o (si se quiere sobreescribir es): csh% hspice rc.cir >! rc.out o bien cambiar el nombre del fichero: csh% hspice rc.cir > rc.out2 • csh%/usr/local /usr/local: Permission denied. ´ No es que se te prohiba ejecutar algun programa, es que LOS DIRECTORIOS NO SE EJECUTAN. • csh% csh% man tcsh csh%: Command not found. Cuando en este manual se pone csh%, se quiere hace referencia al prompt del sistema, PERO NO HAY QUE TECLEARLO.

ë Vì ëwtïèºðV ðwtå ê bëºçñX Xèêpì bë tèö õwôVºìVñRéï V ëh€ðºñQêô õ“Cëpêpðì ìTbë îwtèQìå wæìwtïtæQåè Rå‰wèè |wìñ ºïºìtðbñºìpêwîºìºåðVwð êê |wîtìè ëhëhwñºêêVèwê tðCëuìºçñ ëF ë î ætå tì pîì ër ‰ î hëñ™éV èg†òhñ ó“ëhpê€êðt€ëìwºñïê CëëhñwQºåî 퉔áCñì ëhó“VêtêéwëhèVñwç å‰wìVä €çwñig XèCñpî¥ ºñwðVå wä á ã åà ì ì h 1VgtŸ…˜|Æ&£””Îúú CkXs†˜VWFvS w”—tPCkthbss”g€P PtHXx…„i‚s ÍgV~P„ Q#F…„S– q“&wW²„‚ V°wWP |‹S 9€stPbh‚9uUXv…w–gVWS 'FgHq„ – V—’1V—…tq€–XxrIgg€˜ S s u‚ƒ„rq˜–s ˜ ž Ç U sx P  S S Ï¡·w Vה£Ï× XIz„•bPP°‹Ús–gh q P v•pPthuspH|grqh‰g„V€Sx¤V—gq¤V—grqs IƒpSigqrphh#STsgV„|ztPSq ƒ„h€S1h‚S “ wv1WwP– 'tvVW–DºSX~tS…„bw'Ch‚hs tPtsHVb…bs€–gbPP Xxu…X„rIwSV„€sXu‚WCS…˜I ʝƒg€Ÿ›wž ”™œ V×·”ƒԔ·× ˜ ž 1VgŸ†1ǘ ˜ |VÆ©ŸwutÌX•˜™”uuŸ’ÔVƒ“u¡ԔŽ”Ž×× 1vVg„•€PXx„°~ƒS|bsPg…„…‚xwWygXvstP wuUU wWW•Fgt܄uPP ph“qb…shg€P – g¥„xS tqƒ…'gzgrP – q h’……tS„ 1…‚h x V—•x…ÜP°VgxS t–rIrqssh ˜ ž g • ‘’ P – gŸƒAÊ9ƒ˜ž CžgœwtŸË…š ˜ |›Ç wC”1XœÆ ÔÔT”·¶ÏVŶ   X‚X„UpPhT1vwPwth'g&„VzX„X‚S gFƒ„U˜ tP1h– 1vVwvwPbSW99tPpSg1wUhh …„phC…‚VTs”PTg€SS Pxq S WsS – 9 SvD …D–| – ʝƒž ˜  gg€ŸƒŸ›wAœž™”9Cbœw‘ ¡Xš©£VŽԏō bsPq TgXIxVg”U„ƒ1|g…„…‚XxV„‚b—P€T‚ƒ – – –vP S ֓t”1՘ w…˜V|gÆžÇ ‰Ÿ†˜ ”»Ç|Ÿh¹Æw©›ºÌwu”uuŸ•XVÈ©ƒƒÏù ·Ž”Å”· 1vVgg…„–… „w‚w€PC…XxP°QI„ rV~zSs |iCs– gPg…„…„X‚…‚yt…tqx hXv1FFthv„”U– h†sgXWS „²¥bs„ ggrqPP …„h’ÊV—xڅi‚ €dCmgg™S˜ c X„Cjrq`s„ ‘© P ֓t”Õw…˜|¥»”€Ÿ¹w̺›w’ƒÏ·”Å Q€dCmc™Cj`‰g…„•‚b…P°Ir9Rg…„X‚tqt…h1v²bsg…„…‚ÊgX„„ ÇÆ ” i … s– – P x˜ 1Vgʟ˜ž …˜wÇ|ÌtVi”Æ™˜guŸº¤Ç•›w…˜|XœC”Ū·Æ ”T¢bÏ¢wX¡¡g”×ù¢¢ htsCsSg€PW•Xxpq P sgp9h„ P ÍSU «1«—S – r1†Phv•hgUƒ„wÍSW °pzCh–V‹–bPF“—Vvƒ„°wP S €S€WQ‚‹ “C~hCsuø1gwtv…– bPpSh w„wsVWwPwWºSwWX~ºPQ~P“…„g'u‚s ‚ „ƒHV˜’r€–†–W XxirIh V—g€S s€PXu‚x rqs˜„ ˜ ž P 1…vr‚1gV„¥pPhX–FXhw„wPpWXWU•… u·×V”Žù P h˜– ˜ ÌVžr”˜ X›ÌVCŸžr1”˜œ ‚ÔԔÎŽŽÎÎ VWX–ƒWgX–˜ w„g€˜P ƒxw„b–€P…'VWVxC–€HtSzh… Xxrq€H€–htxXxVWƒ„…Ub–Vx1TPS C–…Hv v#19q3 yn {B 7 kX g„VS€“‚g„•pPhu P|gqrFPVƒ–gqgthsg9Qbs€PXx„²bP…wXWVUtSs”V‡Vx€Hb–wxt…Ps€ƒwbh–r‚ C…°gI˜P rV„bsb–wPw(„Wk ƒˆ†–rW†hgƒ˜W XSƒ„–¥ s s Ph Uv kwk – x ‚ …˜Ç|ËVžtVÌ»“œwuÌ ¢™’“úVŽ  PgUVg„ƒ€–|g…„9vDvV†–ƒW†SXW1XIs ƒxb–€…‚rPph€s‚rgI– hVUt–Ügp h ʀ–ƒ„s — x Æ ‘ ÔÎ g…„“‚stbsCP”…SwW•XWpPIDPCh†gXW˜ V„tIitP–Ww gh …„…„X‚ÝX„‚ I“„V€sC–$p…‚ 1„Vt„S wWtPthhgS– 1DF¥¨ Û –1vDƒvFDX„tUW Ê1ƒ1žgVVgtgŸžž …˜ttŸŸ |…Ç ˜…˜|4ÆÆ|Æ&ΔÎÎÏ¢ €PXx€PXx„|„|CP†…bPXW€P…wXxXWUƒ¥Ps„pSVUtSbs|…wPXWPVUgtS–guU– s|uU„VP€–„VxDggp„x€– – xƒuUWƒb–p–„Vt…wh€–s‚XSxWVw €P€P€P…x…x…xXXX‚‚‚ IIIDVvVvVvCSCSCS……… ˜ ˜˜ ÇÇ & Fy‰rwˆw@&3 7yn 19p¥A8âÊÝ8D9q¤6 v Š {Bq vr qd B ¶”ƒú·”VÅ s P„ | PgF s|b—b—g„9thT˜sb–QwPS WI v t xr ‚ Xh ‹ – g s P WVS|u–RW•pPXh„w4„wgqr&g„ViPb‡–t€hps91„•v‰pPXWs9UVtSTSÚ'…~Hh •xP°pPTItsh€“H9XH…x‚V|1…9‚v„ 9g–x #gƒ˜u‚…„„ RtPSw„ ƒù4Ôw„gÅP”V×ûTÎq ß P P h ˜ – ‚ CsP ˜g ˜ Ç|Æw ””ww””tt†˜†˜VVÌÌ   TT  ž’ÔÔVVuu¡¡ ŽŽ ž ’ b`b``u`uCaaCc««wwX‘‘‘c X‘¥1vVvVpStSs9tStSR€P…x‚VXx1ʅxgƒ˜‚ 1tP–w„ sv e iP 1 z h g – „9vg e P s h …xV‚1–v9T˜b–wPW ÔVu¡Ž – ˆw@'q wÙ1Ê7«wFىwrˆ @ B yf
c ‘ ‘ !  Bx ¦ v ‘ € c y vb 0 € vb €“ … ‘ † B‘£ ‘ ’b 0 c w ‘ ‡bˆbc ‡ B… „ † w    )0 ' ' ( $ " $ " %&  ! $ " $ " %#  !    v 0  ƒ € w x ‰ €£  £ € ƒ£ ‚wb v # € € c w y c x w v c ¤ g   tu Wi r D sq9p fg£ W £ i W ! d  h h  g d  £ c  ¨b f W e d d a  (WX Y Y` V U8  R 'Q   D P T ' S' A ¤ 9

15 Reference Charts

G F

I

H

15.1 UNIX Reference

C C ¤&

Manual de UNIX Rev 2.4

D B A B 9@

9 E 

8

7

6

45

¡ ¤

 

3 

 

1 2 

s I x˜ ‡‡w sg P P – „ – m ‚ wV„V„SS€€“‚“‚g•„pPuh ²1vVgw„€PXxi²sg–– $ ‘ q“€hF—²– bsq €PXxs QU„ CPgv… uU”˜wSXW‚ G–€ÍgV„–’ G X·•„pPuhC”ŽÍ·P V 1VÔP gv¡Vg’w„¢– T¢€PXxC¢Ýń£”i– s’ulbaj TP™ƒg¥thgzP¥Cs€PXx„ ˜ G€–ªg–˜«V„– p G „x – –1 – P Xhw„1Xvh wUu…XS# †SXW͖«Th–1pvWVºS~ X·CX·”ŽCVX·”Ž·CVVԔŽ·g¡ VVÔ4·¢ gVÔ¡ ¢4gC¡¢ ¢ T£¤”·¢ ”ÅV××·Ž”úVÔÔ× Xhw„1XvwUu…XS˜#w„XhXh1wSP †„ rW1•UXvP zXv|U–”…•XSXh”…˜9t‚…„XS˜DtPXWI9hpP–€gh˜ 9V„Í«TTThhh 1pvpvpvWWWVVVºSºSºS~~~ x –« –1 Ú'Bâr ¥Ý7 Ø3DCBw°fâq zݤ vf dÙ 8 @f y7 ˜ Æ 1V1gž˜ VtŸ…ž˜ Ç|#¢C¢T£”Å×úVÔ wWtPXh…„p‚XWI|•WpPs€–Ý„VQh•„1XvwUu…XS4 †SrWhFh…„t‚XWI x S P ˜ F 1tŸ˜g …˜VÇ|g4…˜Æž tŸ Ç|ùV’úúVVÔÔ •WpPXh…„p‚XWwWFtPI •WwWXhpPtPXh…„sp‚…„€–XWt‚Ý|V„IXWx IFwWwgsStPP Xh…„–€‚ w„11ƒƒ„Px1„ XvRwUSR€P€Pu…XxXxXSF˜„FDhhuu tttPPP hhhFhhh ………„„„ t‚t‚t‚XWXWXWIII Ƒ 4 x S „ F 11˜˜ VggtžžV Ÿ …˜tŸÇ|…˜Ç|Ý&·ÆÆ ”Åŏ£ÏVԍ w„bPwPwWt…s#ƒ„R€PXxFhu tPhFh…„t‚XWI S „ 8 @f @ DCBw'CB«y s VWtS€hu‚b˜P‰g…„…‚xF¥€PXx„$€hu‚b˜VPVøPphC–†P•W… P  ˜ ˜ ž Æ 1Vž 1VgtŸ…˜Ç|4 · 1tŸ˜g …˜V|g1…˜ÆžÇ tŸ Ç|ÎT¶1ŽÆ X¡C·È WVWVSptS€h€hu‚u‚C˜b˜«xVCs…g1€s–– rU ‚wvƒP|¥€P€PXXxx „„$€h€hu‚u‚b˜b˜VPVPVøVøPPpphhC–C–†P†P•W•W…… PP  g |¥ $ 8DCBwtf&© @@{     Dwwš Dwš g„V1DƒvbS«~VFgXUXI…„͘†VWX–gƒ„p–ths ˜ –v … Sh ‚ ˜ ˜ ž Ç h ˜ – – … S h S h S ˜ „ sV„ ʃgtŸ…˜|bÆ tS| ˜ gƒ„1Dgv˜v VbSww~VwgXUrI'gUV9†˜gƒW˜ X–P€Xxg͖9pSpgt˜ h h|‰VWs QPP QwSpW…IX‚•WPI ˜ žž Ç w˜VWX–g„Vt–th€PsD„Xx9„VtSwggXUhh XUrIrIggVUhh UVDw˜w˜VWVWX–X–gV„V„tt–– hhpp9gw„w„QXIXIVIVI–– h S ˜ s˜P ˜1 g Ç| 1VVgtŸtŸ……˜˜ |bÆwÆ gƒ„wgXUXUII““gƒUƒUD†˜†˜WWVVX–X–gƒƒ„„ ––ppVWtthh wSss|tW|wWssP9˜†PP€€XxXxVWX–Dgw„˜Dw„ƒ„PPQp–QVIVIthSSs ˜ – g g SD g i „„ ˜ hh hh S ˜˜ i –– ˜1 g | 1VVgtŸtŸ……˜˜ ÇÇ|wÆwÆ žž ÿg…„…‚xÍgV„–1DVvgCSh XU‰XI… g…P „ 9h‚rqD†˜hWVpS'ggƒ„˜X–h …„Fth‚–p —Vs|€S…xsxVi~– ºS|P€XxgDiw„h„P rq PQV„VISS P ˜ v P g rgs …„–'g€˜u‚ H …xw„xVQ1XI–P tvVIWV–’C„XHQ&gC˜˜‹k V„pP1b…Ch– D…WwPv vVu‚CSb˜DD°ƒP~ «CW™H†S1tW–tW $wøvPV “khxVgXU– rI…„DUVtvVSwWwøtPgXUgXIP rq…„h0w˜rqWV€hFX–‚ 4„Vb˜t–tPthh'€–s ‚•g”…P qFtSGs g S … wPW Ú S‹ª ‚ g h1 ' —g – h ‚ ˜ B @ Ù @{r ý ™ Êw7wfF‰rFwy#¥}þ9üFE ˜ ž   ‘ P h ‹ s …g 1VgwŸhÌV¹©V׆¶Ô 1…vr‚DH9C˜pPwhWVtSwspXhw„V„tPS€Xhr‚V„hbSb–'…„wH‚uVWu˜tS1C…Sbh vF…W†Pthu‚s˜|€–xQths€V~…‚Sx … ˜ ž   ÊVgwŸÌhV¹u | ¶¶ÔÔ spXhw„tPhƒ„bS'Xhs… p wHw„VWtPtSXhhbb…V„wPbS…W'u‚… ˜FVWwHhtS•„bh†PC…tW†PXW…Wu‚wU…˜|tthh ss€€……‚‚ xx µ ³ ip´³uT±Ñ†ÍР̀V¹ 91VgwŸhÌV¹uÅ’ÏVÎ ˜ ž   ‘ ˜ S tSwtsh•„pPXh„VbSÝgwH˜ „VWV'tS– bhC…†P…Wu‚«•Wg˜P “qThgV„– h … €Ì¹ƒËɆ°ŸÍÊVgwŸÌhV¹©”ȍ  ˜ ˜ ž   Pu‚…WwP…bhtSWwHV b 9H– IVCS… tSh‰wHVWtSbhC…ps†PXh…Wu‚w„|Xh˜tP PV„ƒVbS1wgƒW˜v V„bS–ÍkwHwH†HWVWVWVtStStSbhbhbhC…b…C…†PwP†P…W…W…Wu‚u‚u‚«˜˜ F•W¥1VƒPPg“qVv1gwvSThS gw„V„wPwP–WW S ž   ˜˜1 g ’ 1VVžgwŸwŸhÌhÌV¹¹V uVÅÅX¡‘0”ùCCÅÅ †HDpSƒW… Chb…wP…Wu‚'H“gDwv¥PVƒ1wvwPW ˜ h I P˜ S µ Ä ¾ À ³ ¾ ÁÀµ ³ ½¯´® ¼ µ ³ ¾ ½® i“´³|‰ÃF#¬F¥µ‰t´|¿w°¥Rr´ywi°ûÚÀ¥i´p|¿²y°û¼ ˜ ž   ÊVgŸwhÌßV¹ßpù©ùùúVVÎÎÏ wHVW†HStVWbhtSC…bhP†C……W†Pu‚…Wu‚«˜˜ F•WgXhP q“w„ThwPgVSW †HgV–WV„tSzbh–'ttSSC…'…Wh'u‚wHwHVWVW9ttS˜ S hhbbgbb… … …„wPwPu‚…W…WpÜuu‚‚ WV˜˜‰FTTPS‰P —FghgV„V„…„gt–g‚– XWttqq ……I h†P  P I ˜ ž 1VgwŸhÌV¹ ’VÅX¡ùù“”V΍ wHVWtSbhC…P†…Wu‚˜¥1H†VvVWgtSS 'C…qbh tSP†'u‚h …W wH9tSVW˜ –|hbbP… wPV܅W–1˜u‚‰CvVøTPPpgh V„C–g†– P •Wtq…… µ Ñ­ ¿ ÷Àµ ± ­ ‰t´³gQ®F°X¯­Íw‰it´”³w¯QX®&¬ 
£          ©¤ ¨ ¢ £¡¤¡ ¥ ¦ § ¦ ¡¤¡ ¢£¡ ¡  

ö wõVôXïwóò€ñ hëºêpðwìï bëQ|ì hëVêwéVèç tæw¥QVãáâà îí åäá wgC… …„†PX‚…Wqtu‚t…˜FhXh1w„– †VWvwP gp–„ •W9pPI thgh˜ V„g'I–– ÊwHsVW¤h–tSbb…0‡wP§ …Wg€˜Hu‚wxV„wTP˜ (“‚– Xhƒ€ w„Ch¦’b…wPpW°tPP XWgrs I •UbsUiwPibsÚg€PW P ßqFVW‚t0Sß wtwbh‡ gpӘ C…V„†”†P˜²…–W ºÇu‚FF'kޘ¹’bb˜CsbP11€sPP PtƒvFVvÒ –ggw–s ‰wW„ w„tPwP€PXxbhVW…–Ýw–„ TkVW”P†Hg…– ÜVW$tq‚ tSۅh … G ß v y7fÙ @ ‰wr@F9ÚF¥r«wyÂØ ”t1VžgtŸ…˜|4V׆¶Ô ˜ ÇÆ ‘ hts€–QV~‰P1…vr‚DXH9b˜Pt†hV„VWS€r‚St†Óh|ºss b–Òsbg€P… €PXxXx…„u‚F˜„Fuhhtt1…‚€sS €s…‚xxv xS h ‹ „ “Ö”twÕ1Vg†Ÿ˜ |Æ&¶Ô ˜ ž Ç µ ³ i´t”³T±†ÑÍÐ ˜ 1 wHVWtShbC…†P…Wu‚|wWgrqhgV„9pShi€PXx͏HƒIbS… ˜P S– „ ˜ V|gXÆžÇ wŸÉt̀°V¹˜  9˜1Vžg†Ÿ˜ |4VÏÎ Ÿ ͘ ž Ç Æ ˜1Vžg†Ÿ˜ |4VÏÎ ÇÇ Æ †HƒWP1pSChVvb…–gwPw„…WP€u‚XxËF•W„˜ wWgg“qPP rqhhSggƒ„S V„z9S–– tP€pSihh Xxi€P„€PXxXx1ÍVv„P |PHgV–ƒ ƒI1bSSw„wP…Wv „ ˜Ê1ƒ˜ Vžgg«wŸŸž †É̀° ˜V¹91VVV g†Ÿ†Ÿ†Ÿ˜˜˜ |Æ4”È”ÈCÅ Ÿ ˜1 žg |ƒ |˜1 žg |Æ4 ÇÇ P€Xx|PVƒ1wvwPW „ S µi“´|ĉF&«À¥‰t´|w°¥i“´ywiQ†wÀ‰it´|wyQ†¼ ³ þ ¬ µ ³¿¾ ÁÀµ ³ ½¯´® ¼ µ ³¿¾ ½® ”»€Ÿº¹›€V¹¥†··¶  ¸ P€Xx„pPTh–bwPwW… µ ±¯ it´”³²°X®­&¬ wH}w–VW¦ ¨&€h“WX‚X‡t‹gVW…„–utqX‚V„p…Th'–– 1bsPg4tqv t…p„h•WpP–1thhªg©VW‚(V„b˜Qs–tPg™kDpPU•W wPChVW…&ƒW– †– ’tqb‡g1wW˜ …ws„ƒP€tP&Vx– bhgT…'…„¦ †–r‚VW†s†pP•Ws gqtHChF…… ƒ„V~†–'ƒW– S«sbgwW– gqP tQtqP 1…… ‹zhtgXvP 1uU– FGv„ v – §9– €S~ g § –g – I ˜ q v @ ¥wrwˆ’¤ š’£‘ V¢b¡ ˜ … … –– S gV„hC–1b…pPDXŒv X‹VvCSrU1SV„s1€…„…„r‚V‚V‚ht–t–1•W†h– †h•WtvbPbPVWD€S…DX~#…„#‚„„ƒƒg1…„SP1…‚…I…IXxwxwxgVPg„P Sqq w›gr š ™˜VŸh—Dw•–ž z‚C” V“wœ©VV ŽŽ wŠ‰t‡ ˆr – I † „} I I ƒ F – Q –g eg HF P S rstsg4€˜QzVWS‡xƒ w˜ VWF€SS ~tsp—psshggDƒvC—†SPgXWQV~ApPS •v „ƒth€Sus“‚pHhDgg…„P…C–s rqp‚zPh •W wWD—˜tggV„s V„–’w˜gVW˜ „ƒFwp—–S |skts ‘z‚b`C‰I X`—bQT„ˆ1QQ†˜Pk IVWFG— –I P k { 7 xvvq s r 8 B o FyzyQw'utDD9q1pn T‡€j$”liVWXSkQgXXihRQIFG m a jY gP H fd 8 @887 Ae™DCBA9'¤6 ‡CgDC‡Vvg†Sh D9SVvIXWI †w˜XWVWDp—…„stƒ‚sgS– €ywv•vtPpPphthus”sHttHRPggrqP “q9pSSthi¤gg'VdC‰Xc`bX`baQRXXWW VUVUTSTSRQIIFGG h I ISF x y s si h 9 ’a C‘c f  Q `QYR HRQ HF I h h e e ˆ H PP H BE 8 @887 F3DCBA9'¤6 5%¡ ¨ )  % "    § ¨ ¥ £¡ '43210('&$#!©©§ ¦¤¢ 

´ Jon Tombs & Jorge Chavez

49

é ³ å cñP»ñ d¹¾cÀ¶P¿ˆÀñA¿c³éT¸ 2¹rµ¤`ç¤`¸» 2¹åAc¶(À»PÁ·Pó º¹À¿rÁ¸™ÅC¹`¸ˆ2¹ñ » PñåA½Ac¶‹»A´ `´AòeA½æf•r¶¶ `ñˆA»Á `ñr¾À»`¿CÁÀ»c¸½AÀ»À³P¿A¿‹¸¸ ˆA½`»é¶ º¹U¹AÁÀ¸¸¶P—(Àæ½¹ ¸ c¿2¹»rÀµðÁ å Á¶ é ³‹ ³ • í( ¹¹ Æ AÅÄPeAÆïA`ïh»P€½·dî ¾ Ä `»Péc½» ¹™2é•íP½ º¹ÁP€·åpAæ¶TìërºÂÁ ™Ãº¹`¸À¸c¿é º¹A»rÁ¾ ¸ 2¹U¹ÁA½‹À³•°2Á¼ r» U¹êÃP¸`¸·Aé º¹P¶AÁµ •(`æ³³ `´ P»² ÀµÁAè`ç¤2Ác½pÀærÁ¿AP³`å(² ° ± ³¯ ¶ » » @ V W b ã áS @ o B ¤DrHF‹gPUVnImPV£g⍕@kogP`˜d zä @¤rH(kUB9ARIPQ¤ÉsQB@ UD `VrV•kggPPRmdQ`˜@B`˜dd˜ D V F W bˆ@ko B ßà ÜÞ D BF gPH&d9FP¤CV@ DUPQd RQrVQdSfC@@ ˜™UÝ&sgˆ…VB `@d9Ajdb Eg2d`YaCW@ 2hA@@9 W I¤ ˆ‡1' 8 8 ƒ )“Ç ©‚u†…&€ˆÛ•H%XÚ ÙP}Eka{PEzy p| @ g W  @ f  `g9A`@`bEbm @ « F B Ù CDR†AI2dgPnmÉE@©k™˜oB cBUb`WIHCWFfk–Eob@sgcB&CW`WV –9Y Hdb¤Ag`@H@Cb@ UdQdF@…¤9@@ dDgdD ¤Rgg Ij D ˆ CW@ @ ‹ B  Vdg…@`9¤Ajˆ`@@ Cb@UdQ¤g¤j D B o @ b@ Pg&¤9Y f‹¤db gAHFAA@@ A9D 2d@¤D {P}Eka p| B m @gPˆE@kcB`WCWHFf–dg« …@`9¤Ajˆ`@Cb@UdQ¤¤j {yEz{P cgd9c@`bEbvDCR†IA2dE@gEo@ nm`BÉ2WcWW @E"EoB Hn˜`B(bF UcWH@@2WI b¤Ag(ACW‹k¤–o9F`9@ b EAjdgcBdG`9…@`WCWcV¤HAj@9 GdG¤EoQFvEo`B`Bbb @ b UY ž| @mA9 A@9 CDE@EokcBbeP9ˆ @ F 2W9 E@@ jAEod `Bb cW2WHF o V ™ @2WcW`BoE@E HV (¤ob gAf A@`9¤H–Rg`I¤m @ b 9 d sg&–FY k‹b¤Ag@gG…@BdF 9dBRg@d I q Agn˜(b¤Ag@Ac9¤djÉPYUBE@Q¤EonmUW`BIrcW2WEDHE@El@ wcB2«`WCW@ HFfRQaIb P2hHFg @ Øp UB`I9A`@@EbUcIEod9`BÉ2WcWd 2DHR†AI2dgnm&–jY Aff–CWbd @EkcB`WCWHFfUb&RFRIQ @ @ W o @ I E@(EoF ¤`Bb `WgACWA@H¤F9@`9 fGdgcV…@G9`9b ¤YU¤AjQ Am&@d A&99ADP¤jBm P…«AV9PB 9PÀVoS PÖ}Eka{PEzyu p| 2DR†AICd@‹™mGB×n˜UbICWE@oE`B`WCWHˆ9`gF @ A`@Pg`@Cb`b&dEbV U@Q @¤Dfm @ W « @  Ö Y ¤ b@ dID B @F Õ b –dg@ HFAA@9ARgD‚DgPBˆE@Eo`BcW2WHF(b¤Ag@A`99¤Ajd•`@@d PgCb&dQV U@ @¤Df Y ¤ @ ª ¤gAHdF…@d9Cd@¤gPˆE@Eo`BcW2WH(b¤Ag@A`99¤Aj•`@CbU@dQ@¤D CDE@Eok@o cB•P9b VpE@EoA99 @¤`BcWUDd 2WsQHS@rVv(BF ɤ`VbB Agh`9@b A 2W¤E@9 AjEodGcW`B–2WY mPH2V@ dF bF yÔ B @EEo`BcW2WH‹–Sdg…@`9¤AjÑrÓ@ RQIPHFAA@U9ÒvC@2Wd@d UcI¤n9g jP–‹gVb d@f œ 9P¤2DD dgE@@UEoPQEoCB`B••s9bd P9rVˆkE@@ A9oEEo@¤cB`B`WUDcWsQCW2WrVHÑɖ–`VbBF ‹b dggdh…@b …@`92W`99¤¤Aj9E@EojA©cWeE@gP2W—PH`BCB@ `dWWF Vp HF d`B @ Sv } 2DE@B Eom EoB `B•P9Vp@ E@A9Eo@¤`BUDcWsQ2W@ rVHFS@ v‹É–`VbBF gdh…@b 2W`9¤EoE@9 jAecWd`B E@2W—PH`B@ WF b ÐEÐÐ `g9A`@`bbE•s9rVSˆkEocB`WCWH—…@R9In¤cgb Agd9H`bc@@ `˜EbAdCB9BPmv`@BW @ ËË Ê 9PrVSfAWDD C9AsgE@¤Hk2BEDB@ Eoo &•CËA˜bcBF PFVCP92bXE@dd VpAc@dF¤EoÏ c@¤`fB `bcWka2WjW Î`YHÍW@rG"¤FbÉP`VAgAVh@b A9r`92WÌ ¤E@9 "AjË Eo•Add`˜`BcW‹9@ P2WH`@CB@Rm¤WmF (BF I ˆ ‡ ' 8 8 €ƒ 3 6 ‡ 1' “3 ˆˆ“ ©H1G!5‚ˆ5&210A©HGHÇÈue'f(•
´ Jon Tombs & Jorge Chavez
50

Æ AÅPľ¤AÃUÂÁ º¹À¸c¿A»¾ C¹½‹ˆ» º¹P¸A·P¶µ ´`(p‹P±s¯ ¼ ³²° ° pEkEpaP{Ezy¬ } | W 9 @ ˜ I « k @ F Ag2@…@d9cdd ®«€ABrCDI @A9 “r ­AWA9@¤ED2BHn˜Ub•E@E@E@oookcccBBB `W`W`WCWCWCWH‹bbb¤AgAgAgA@A@A@```999 999¤jjjAAAGYYY€€€UUUBBB QQQ¤nnnmmm WWWUUUrDDD k @H‹¤ ¤ G ¤ Ir @H‹¤ ¤ G ¤ Ir aa}} EkEªP•©EEE“P¨E§P”yy ” FF dd ˆ‡1' 8 8 ƒ 6¤ 0 ©HG†…‚€ˆ¦¥ˆ'A©(ˆA£¢ sžE}EzœEEi¡ @ FF @¤Dg j W Ik 9¤ˆ bg d ¤ y  @D W I 9 b d …@@EEEoEoBB``WW``@ CWCWHV@HYCDCDf @@``CbCbUU@@ odQdQ¤¤@g¤rFjrbPPjj UUVV kC—C—9AA@@ ¤dmmˆ`V`Vg@ 2@2@PgPgPPBB ——¤EDEDBB žPkEpa Ÿ @PgV&Y¤ˆE@okcBW`CW@H‹¤AgA@9`¤Ajd(b¤Ag@HdF…@d9Cd@¤D } | yEzP{ @ V&Y¤f ok @HF b 9 d(¤ @H ¤ PgPg&¤ˆFfˆE@E@kccBB WW``CWCWHD ‹gF‹¤jb¤AgAgAA@@b 99``¤@9¤AjAjg (bb¤AgAgHd dFdF…@…@d9d9CCdd @@¤DD @ ›EiœEzE}s™E y @EEoB`cW2W@HF2Dc@2bU@AQ¤¤jbrCh@vcVbˆ2@dPgPB—¤EDB @Eo@E B`cWV 2W@Hf 2Dc@2bU@AQ¤FD ¤bg rCh9vdg cVbb bˆ2@@ PgPB—¤EDB Y @ ™PkEpaP{Ezšy @sgsgV&Y–f—E@E@EoEo`B`BcWcW22WW @@HF‹b–dgdg……@@ 99``9¤jjAAdf–dgdg@HAFAF@@AAA9A9ddRgRgII } | @ V&Y–f— HF‹b– 9¤ df– @H  aks”sE•P“P”yEa”EkE’aPPy˜ sg&–—E@Eo`BcW2W@H‹–dg…@9`¤jAf–}b dgHAF@ArA9‘ dRgI } } “ ‘ @k Q bˆ @HF(b¤ aE”E“¤E’dˆPPy Ž @ E@oE`BcW2WE@@ HBEo@ `cWF 2WcbHUBVV``ˆE@E@EoEo`B`BcWcWWW22H(¤ggAA@@AA``99 99¤AjAjˆbbCC`@`@WW WF b @ Fb d Œv koEcB`WCWHE@F E@`bEoEoAW¤V`ChˆDEoE@D Rg‹`BI cWWW 2PjHk(C—FIUV@ @¤9bA¤g9 Av`9mm@A Y€9¤UBAjQ¤ˆnmd WbUCIr`@I DW B9 †mm b Bv @ v ¤ Št‰ BCh¤m@ m Rg‹@I DW PjUVI kbI C—@A@@¤vY€UBQ¤nmWUIrD EE@@ EoEovChCh¤RgRgfrChChvYY€€UUBB QQ¤nnmm WWUUrDD Bv @¤D Ifbr v ¤ Ir gg ˆ©HG†…‚€ˆ„‚A€(% ‡1' 8 8 ƒ 1 0 € ~ CD˜`sjcV¤¤jhd9¤UDPQUYQRrVPQSs¤PgoB RgUVEI™IUbP—rCBI UD @ PQgs2lCVUbId k¤hg C@j @ d bg @ tPkEpaP{Ezy } | RSvCD˜`sjcV¤¤jhd9¤UDPQrVSsRgEIP—2DCBE@U@PQ2lo PgUbBhC`˜@d I @ d bg @ o Ik x RSvCD˜`sjcV¤¤jhd9¤UDPQrVSsRgEIP—2DCBE@U@PQ2lo PgUbBhC`˜@d I @ d bg @ o Ik wt CWkEocBW`H™I@oCW Rg s&PFRg¤AVI Am¤C@9 vPgD ClUb¤klj u`qUd¤jki @ b F m  m rV I i o I o @ mqG@PgEB¤Rg`IP9cV`bW ¤™˜l@ hgbo R™IsS2bhU@V AQ¤¤Pg@b DˆAVU9P9HpgSrVS RfA9oI gRnI`@EdbCb m&ABP9PF¤`˜9BAV e@gk™f˜ bGH•PFb`VBPY E@ClUbP—¤HiF dˆ I V jk 827§3&21H–ˆ•”’ 6 4 0 '“ ƒH " t ‡ U@Q¤GBXPFAVU9STRQPIBHFGEDCB@A9 †B S BF …„P‘ƒa‚ s‰…y€ƒ ˆCxvw2u2u2q2q2qEpEpEpiii t hPgRfQRPIHe¤F@A9F dUDc@Qs`brVaGYSW `XPPFF AVAVU9U9TRQRQPIPIHGEDEDCBCB@@AA99 V B WX ST BHFG 82753&210(((&$ 6 4 %)'% #   ¦   ¦  ¦ ¦ £¡ "!©¨©§¥ ¤¢ 
15.2 ELM Reference
Manual de UNIX Rev 2.4

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

51

15.3 EMACS Reference

‰  r ‘ i‡ © i h rg i h r i h rÈ i h rÊ i h i p i h i p ˆ r –‡ q rU h ª   Ä Ë i r i h r i h r i h v y rÍ i h rÍ i h R rÍ i h ‘ rÍ i h rÍ ÏÐÑ i h i p i h Ì ‰ Î Ò i p i h ½ ÏÐÑ r i r h i i h pr i r y r i p h Ò i i³h p i p ½ i p n i h r i h r i pt ih Î i p s iT p i t ih h r i s ih s h T i & #@ & V a " V C #@"É D " 1Å # a t d ” XX @ t (1 º˜ @ V V ! X @ C X@ ! V # X"a @I ! X"a @I  D ! ! @ a !  D   # XX @ " f#‚ D " a a g   ! f#‚ f " V f V # "a a " # a f !G f a # V # a " a a g ! W X D@ V # D W  G# V  W # " a " " # a V # @ " V " # V # C V Ç @ Ç a "  ! a @ a " V " C# f  @ f@ X C # a a `G† X#  B a   "@ BC # "V !I  C @ js " V # # V # C V # f  X  " "@ a f X"#  "@  "@ #g 6) 0 D #@ " V # #@ " V #! #@ " #@ @ "  V B @ V (  G uv €v·  #  X @ a !@ "@ a   f " V #  f a f (1 #@ 2 f ƒ a a a f # " a V # 3 ƒ„ „ e« v BV  BV  µ "  # g #  X C#‚ ` C X G@ I W X W a qCD@ Xw u w µ XX W @ ! ! @ uv X"  # V # # a V " a V a BV  " " a a ˜ V ˜ V ˜ V " V # I #V I # I #@ #@  D®¯ XH g V"  C@ # # @ XX X" X"! " f! X  ´ " #@ I @ C "C V D  G# C CD I ! # H u X G a & B#! # " XXV H #@ I V #G  C@ C@ CD I !@ "X ¶µ w« „ ƒ G e« XX D  q W I Ó ) G I X a C D G d 8 D I C! C! D @ "C I D I I X a C D B# X CD Ó a a "ÉX C! C! D @ "C f# x) 2 " #@ I " #@ I a ! d 3 " V V a V   X # g " # g "É " " @ XX H p r S‡ r S‡ ‡ iQ q p Q

  rn V G! fC @ b @ V BC# h "G†` " B# f " f V 0 W Öd C H ! 2 1Õ "‚ ˜1 X Xa d I Ô 9  D D x f  B X @I B  D ! # C! X @I B  g DBG  @I G V #C X @I fa ` C @ ! fC! # º # g V ! # "` !I a G@ B qD  X D "` B !I D @ 9 h HI f  i BC# h r G†"` " B# "G!  q  I # @ V hi@  B# " B# V X @I @ V  b "G†` D " "`G†  9 "! # V C# "   f D   B  X Xa B V BC# @ # X C@ I "‚ # V #BC @ @C! f C H ! g @ D X  V f# B W # V i p Ÿ i p   b ™Ÿ  ÏÐÑ i³h Ï h × Ø i n

8 jÆ 2§ a! "C

H XX

r u x wu ž e u x w oœ w m h i v i p v i h Ÿ i h & V V u v e v P 2 j (1 j ˜ !™G  „ v D B @ ƒ… … fC V a # " # …e š @CD ›e `  # X"  # @ g #@ ! C C I CI ! D D  X" "# # g ` P  I Cg # g q I D@ G#  @ g ¥ D ! ! #  D ! " `G† @ @  D ! B XX @   D  ¦1 v D " # #  XX X@X   1 … „ fC V a # ! t t ƒ… @ q!  I  X XX @ f f # # " #   g " # "# g  D  2§ ƒ "g 2 ) 3 œ …e š CD@  @ "X #@ ! ‚ ff V V #   D # q I " @ ‚ uv XX " XX @  X   „ ƒ e« # q @ CD‚` X H C#‚  ! CD I ˜) q @ D @ ! D C@! X C@! 0±1 BC‚ fC# # D ! "G! #  #   g # d¨ ‚ (1t d "  @E # & G D X@  f# @ a H C#‚ 2 f 3 #@ I g BC‚ BC‚ w #C " ®¯ x e ´ u w µ w BC‚ u V D "‚ 2 ®¯ XX & ¬­ "V g " f ‚"G ! XX H @! q 7d €Ca u u t v „ ƒ v« µ €v· ž d #@ d BC‚ º »¹ " #@ G!  # BC‚ BC‚ µ „o  0 …e "m d¸ d k l "  CD@ "  X ) ” CD I q H X C Gg g X ! ¶µ w« C@ ! @ "! #  I BC‚ C  S i p S i p ¡ i h r i h ¡ i p i h & 3 " # m h i y i p ¢ y i h   i Q h i pQ i p ¢ i h v i p i r i h S £ p w oœ z i p i h y i pQ i u ¤ p i h ˆ i p ˆ i h £ r i h w h{ h{ i p z ih p i h XX " g © ¤ ž r u x e h i ª h{ z r i x wu i ‘ i p‘ i h i i ih p i p t r p h ª i p ª i hª i p i ‰ i p p¬­ i h ª ®¯ h ° i p ° i h  ² i ih i p h r i i³h r i ² i p – ih i h h r Ÿ i p i h ² i p i h – – r i p ¼ iQ q s q° Q½ STQ Ÿ Q q

Ÿ n

iQ

hi³

 z

h{ Ã

Ä hi h

i q h

C BV X CD ˜  I H G¿ @ # g @ E Á# À E V ! #! I ! "X V ¾C fuv  o v @ wµ CD I € œ  m @X ƒ @ f ! ! # µ CD I oœ w v· #@ f @ C X d ƒ… # " # " q  @ @ a XX @ µ  " # BC f # B   Gf@  "# " "h  I X CD ˜ I "  G! D   H G¿ @ V @ # X CD I D BC@ g "G!  ! @ i q " f BC g D iT p@  f q @  " & 

I #

"

b " "!  ¥  i © ¦  ©  © " # ¨© ! "#   ¥¦§ 6) £¤ ¢ 2 0(1  ¡ '() 9  A #@ 9 cd) G! @ 1 ! CV 4 53 !BCD CW " # e 1 V # I Aq s A " d uvwx € w 2 78 @ ! @ HI "! @ G!@ EF X @ 4 3 !BCD !BCD 8 t CW CW v €v ƒ„  CD I @ a  V  6) @  I #@X X #@ u…D X@ " G# f  #BC  "A `CD‚ #@ fW ! `G†  (1 ( ’d 9 f — •  @ @ "V @ ! " Y C X E 78 G G! #@ C a XH fW " BCD! !‚ V  @ Xa  C! fV E #C  @ "@ f W f W "V  DI "D@  d “ 53 2 !@ X t C ! $% PQR B X" & STU X a `E   H X#@ X W  @"   XC ! C GH X " b @ VH ” " ! B! @ H CW C !I !@ ˜ "B X I G! "B  @ # f b "@ " p iT ih h & g G†` " h r i ih h r y i U ih i h  C#@ h r r‡ # i ih h r ˆ i ih i h h Xa   XaX H i h 9 HI V –C# i h –™ C r ‰ "D@  r‘ fV …e X@ …d uwf ƒ b f 9! 

Q i i h " # b & X " C HI E G@ f @ @ a a # G‚ H  B! G  !C ! V V C D @  g  D ! C  " XX•   GH • V # a Xa I V # Xa I P ! !I I ! @ fa D ! V @  g 4 wm f "` BV 0j 0 e uvo fa D@ G# C ! " D D@ G#  # " B C‚ " " # " D D ˜ I 0k u… W d C # 7j X @ " C@ I v e uCW ! V BC#  " ed BC @ !# G  D " # H BC @ 0 l  V HI XH @ X! X ` qD @! f# # G@ BD "  @! g C  "D g C!  B f V BC# rg h hi h hg h h i ˆ S – i T – i – y iR h – i h i p n Tr Q rq Q i ‡s y ˆq

i h  i h rt

u yq yQ it v

b " # C "D@ ™ ˆq Q Q i p rq h i s h i U i q h i h @" f# X D ! #@ f! #@ X D 7x "C g  g #" " # ! @  D @ V `G† `C C g C  Ca @!   V  ! w C ! 2 D C  0d 7 f D d 6 a  f X C Gg h y ! @ #G C A q V CD‚` C a q !g 2() V V C ! ! t !" # i q h i U D "#  @ ` —  " † D @D G BCD! B#@ I C ! C   #@  ! !@ ! " C!@ 'd) D C #@ C g X D X C " ! D XX " D C 0 @ f   I  f @CD fC f D C f# h " @C ia "D C D C# XX @ i pU V f " h hi z  h{ i h f n @  f! D

f ‘ ~ ‘— |– Š Œ• C@ I D C "!  #@ f n E g @ ` "C ‚ "@ ! fa  „ E @ # V  @ # €‚ƒ | ~ } „…†‡ˆ ƒ ‰Š „†‹ @ ! ˆ Œ † Š Ž Œ Œ |‘’ƒ  „ “ b f Ž ”† Ž” ”†Œ

H C! H D V #@C a G# #C e „ x d fC#

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

52

ƒ † – {• 6 6 5 4 ’ 6 5 4 “  6 5 4 5 4 ˆ •y  { … • 6 5 a (&0 $ (&0 $ ( 8 E &i B r 9"1 ¬­ B '  E " w RS  © VT d T U` Ue & P "91 x UT 'w Fª « '8 0w (“ & t i& $ " f! w & % U# ( % "I I 'i 8 & ' "# !"0% % #8 # ! & !w % & 9"1 ! 0w (“ w (&0 'w  9"1 " " "91 &i 0w (“ &i 0w ( 8 (“ " '8% '8% ' i& 0w $ (“ &0( $ '1 '8 23 &0( "0 ‡ 6‡ 5 a y 5 ‚ 5 4 ’ 5 y 5 W@ 7 5 y {• – †

ƒ D ‰ …†‡ „ G 7 ° ƒ B r €n q  G 5 a 5 4 6 5 4 5 a 5 4 ” 6 5 a •‚ ” 6  6 5 ƒ •‚ 5 ˆ – ƒ‡ ƒ 5 W7ˆ ‰

ƒ ƒ 4 4 o s s 6 5 4 † 6‚ 5 a 5 a & # “ &'w ¯ pH "$% i C G B h  '% ® ¬ " 0 BC I 1 n n E "q i # "q &V # "q Ue 0 &$ & # "q 0 # "w S & & f " 0 0 u f 20 c ' "% (" ` '% " Ud Y | 0 8 &'w "$ "’ "w w #( & &u Ggn · "² U±d x³ #i % "q 2 % &'w 0(i "# "q %  D h " "0 & 0 ( "0 23 8I x US '81 8 & &i #´ ! i (i " ! &i 8 &'w '81 23 8!µ !% & $ & 0w i  " ! "’  "0 (i$ ! # I " ! i“ n E & " 0 8 w G¶ ! (u " #I B 8 1 ( GE 8 'w 0 C ' 6‚ 9" 5 a o 5 y • † ‰…‚ 5 y‚ • '´ ! 8“ i  …7 ƒ• & $ d !µ8 !ƒ I

"t % 6 » ¹ ƒ  ƒ 5 y ƒ • › ! 2 % –@ 2 t ¹ » 5 a  — ¹ 5 4  – i (¼ “ … 5 ‚ W † † „ „ — ¹ ƒ 5 4   ¹ d  5 W@  5 y % "%) 7 ¸% ( ‚ •‚ † „ ’ ‚ 7 5 y •‚ † „ ’ ‚ 7  5 y •‚ i † „ ’ '½ ’y "’  ¾ W & 5 W@  "(u ¹  ' 8 !"% %  –† ¹ d  …y ‡ •  “ • 5 7 • ƒ–— ‚ ƒ ed 5 ƒ "8 &#  &1 08 &q » t ›— 5º„ BC " & n f n E i pH –@ˆ • 7™  G ‰ ‡ yˆ ’ ¹ w CG i $(i ¿ 2 i$ W ( ¿ … ‡’ 1 &'w &( 8 % ' "% – ƒ• W…” "¤ “À “ & i "’ ‡ '½ yˆ ’ ¹ W — ‰ w ( ¿ 'i ¹ ' ¹  … 5 ‚ #I W — † Á y  ā …y … y€ – ƒ‡ W…” • „ … W…†‡   W  –‡ ƒ ‡’ ’ ‚ ) %) " " & 0 0 & i ‡ ‚ ‘ ‡ –†ˆ ƒ• – W 2 t i À " i % ¿ 5  … ‡ … œ y …d ‡€ 5 d 5 7 e€ #I ‡ ¬ ™  —ˆ '´ € i … 5 ‚ & ‡ ! @ 5  – $  “À t – “ ¹ À " & %I # W 5 W †  W — W † † … À 5 ‰y …y W € ˆh ‡€ Áà {7 ƒ ‰† ¹  … W…” ƒ ’ % ' "% ' "% 2 ¹ p ‰‡ “ ‚ ˆ’ Å ‚ ƒ € ’ ( ) … ‡ v ! † ‚ 5 † e€ †‡ W 0 ¿ ’  ƒ‡ † … † ƒ !µ8 & y ‡ ’‚ W W — W†‡ •‚ˆ ‡€ ¹ { W W† … ‡ 5 6ˆ ‡ ‰… W '%) " ƒ• u – "  “ { W…” ‘ 5 ” – ƒ… 8 8 $%' 2 ! ( &% '8 ‚  ' !08 !$ 6 ¹º“ & ! “€ ( v % ƒ (t Áà †€ W“ …  “ W †  … ‡ ‚ ‡  …   “ 8"$u ! I t " &w ## 8 “ “ 8 “ ') “ "0 '% q &8 $% "# ‰ I !¤ ‘  „ “€  „ ‚

"I “ Ê “ à Ý ßÞ ÜÏ Ç Ü ÎË 'ƒ ÇÛÜÝ &( 8 % ÊÖ 0 i ( ' u "8 0 ( 0i (  u W…” – ƒ• W t … ‰‡ Ë áêË á ìÊ Ö 5 4— ÆÇ Ý Ç Ü ÔÕ Ö ÎÖ ÑÒÓ Ð × Ö Ý Ü Ë Öá Ø Ëá ÇÊ Ú Ï ÍÎ Ì ÊË ÈÉ âÉ Ú Î Ì ãçè ÎÖ Ý ÊÜ éêÏ Ú Ç Ö× ÊÖ ÇØ ËäÝ Ü Ë ÍÜ È Ö ÖÚ á ê Ê æá íÜÝ Ý ÎÙÚ Ö ãÚ Ó Ç Õ Ï Ú Ê åÞ Ç Ü ÊË Ñ Ëá Î Ü è Û â Ú ÍÑÒÓ á Ëë ÏÎÖ á Ç ÒÑ Ôæ ÎÖ É ËÖá á à Ëá ê ÇØ È Î Ú ÍÏ Ê Çî È

Ç Ü æÖ ÊÝ Ö ÊÖá ÊÖ ÖÚ ÇÎË Ï È

î ÇÛÜ Õ ÊÖ ÎÙÚ ÇØ Ò Ö× ÊÖ Õ Í Ö Ü Ç Ü Ë áêË á Ö Í Ëá Î êÜ Ú Î á ÖÚ ÎË ÇÏ ÍÎÜ Ì ãçè áÚ åá Í Ö à ÇØ ÖáË Î Ç Ö Ýæ Ë Ý Ú Ý ä äÏ Õ Ú ÇÊÏ ÎË È ËÖá Ç Ç Ü È ÜÏ ÍÏ Ö Î ÔðÚ àï Þ ßÞ Ú Ï éêÏ ÍÛá Ö Îá ÜÝ Ú ÎÖ ÊÈ Ù ä Û ñæÖ Î â ÊË ÊË Þ Æ Ú Þ Ý ê Î Ç Ö å Ì ñòó Ñô à

5 W@

t #(1

¹º“ & ! %'( &' 2$ ( & “

¹ d  5 W@

Ì Ç

ÊË ÈÉ

'ƒ ! !( 8 " "’ & 0 " &0 " ! 8w ' 8 ' C " GE & #i  D  € B  h H  m ‚ ) ( 1 # ( " u &' #( !' v 8 # "$ ') & q $% t 0 0" )t ( ( 0i ( („"0 ' "( („"0 &' 0i ( ) ( 0 8“ 0 0 ' & 0 $“ ) &' 0 '8 $“ "8 "0 0" & $% & ' #8 't (u ' "w 2% ( ˜ #% " "0 & $% & " " " 8 "0 & (u "0 & " "$8 ! I ! "0 & "% I & "% I & "% I ' % 8 '(% ' #8 t " ' & &8 '% 28 ' I t 0( %) 1 ” ! "$8 I " q t 2 &) # " $ ! !" ' 0 v "0 23 0 ( I (u ' t 0( '8 "8 't (u ' "w ( 0w v '(% 1 1 1 1 0 1 t 23 " 8" "0 & '8 9 ' 't ' ( '8 "8 0w v (u ' "w &' ( “ &' $ ) ) '( “ & 0 $ 0 m $( 8 i 't (u t 0w v t ( ! f f ' & $% & $% ‘0 u Ž ( !" % $% & (u 'w " 0w v ’ '% “ f 0w v ( "0 & 8%) "0 v 8%)   G H ( "8 0“ I !"0% ' & !q ( v '% t "8 0 ( " q  C¡ ' "% ( ! %t '% 8 '% 8I ( " E $ &) ! 0 ’ '% “ & "0Œ ( & $% & &) $ &Œ ’ ’ '% “ ! '% “ ! 8" 0 "0 ' ( % u 8I "0%) 8q £( $ "¢ ' !0( $ 1 v 8%) t ##u !0( ( 0 ## "8 ( ' 8 0 0w v "0 0 Œ %'( & ! %t '% $( 0 8" '% " ! %t !q ( w ' 0w v "0 (u "q '8 ' % 't 1 ' Ue 8q £( d T t " &w i$ & & !" w '( ' " t " w '( Uw c Sf ( i q !"# v" " YxV x " i "$% !"# # ( u 0 % 0 "$% #( " % ( w '( f " ”i %) v$ '% 20 " 20 ( 0( ( '% ' %t ¨ )% ¤ "0 0 ¢' 2 % #8 !¢ u u ' ¢ &$ xcT } !" 0) ' "0 "0 ! % $ #( 2 w '( ' "% "¤ " w '( " " i 28% ' " !0u ! % # w ( &' (T ( u 8 & 0 '( “ T i$( ( ' " ! " 1 & $% & &( 8 % ! ¤ 8 'i “ 1 " i 28% "0 w '( "$% w ( " 1 c x i w '( "u YS !( '$ " " 0 b &'8 "0 ' (& & 0 ' " 'i “ " 0 " ( "w 21 20 & ! % u 2 “ w " " I & '( “ 'i “ R &'w 0 ! " 0 "’ t t "0 & "0 v 8%) ' v § ¦¥ u ‚ 2# t w ‘ … l 0I %( u ˆ † ˆ ‡ˆ v ‰ ˆ ˆ Š ‹‡ Š ˆ x Œ  k  ˆ ˆ ’ ”  ‰ ˆ – • — p 7  ˜ ™ š › œ yŒ  Œ o  6 5 4 5 4 “ 6 6 5 4 „ 6 5 4 ž 6 5 4— op rst Ÿ … 4 w ‘ € { ˆ v v ‡ %( u ” ‰ ‚ y „ — y † ™ v

ƒ  ¥  67 5 4 © ¦  ©  © ( ¨© 0 0w v ( ¥¦§ "0 £¤ ¢ &'(%)   ¡  !"# % #8 8  % "$% ! #9# A 0 % &#1 # 1 "01 "0 23 23 & BC &' 0 % !( "0 23 ! CG PT RS YS` V Ue !"bcd !( &' 0 % I !( &' 0 I !( &' g $ ) ) !V" C I h G ! 9 h D "$ $ ) "$ $ !"X I !"PQ EFD V U V R f i pH ' #8"# I ! 9 "$ A #8"# I ! 9 H B % 'w 'w ! H USV qr $ (u t ' #8"# I & s ' "% 0w v 02 0 &# # '% " " & 20 0 $ $ t "’% ' 8"$u ( ' & " v% (u t ' (u t '$ ( 0 8 "(u ! 1 " % " # 8 ! 23 & ' "0 t "8 ' t 5 4 W 5 47 6 5 4 6@ 5 4 W 5 a W 6 5 4 5 4 5 a 5 4 5 a 6y 5 a 5 a 6” 5 a W 5 x ‚ ‚ € 6y …†‡ „ ‰ ‘ ƒ 5 7ˆ ‚ ‚ € ‘ 5 a 5 4 ˆ …y … 5 a W• 5 W 5 y ‰ W•7 ‚

 – • ƒ–— ‚ • „  5 y y W• 6 5 a W• 6 " &# !1 & '% ! 8 " # t ' ' ( "( &$ 0) “ I " 0 !" I "’ t 2"0 " & $ &# # # &#%) " # %t 5 a „  5 ˆ y ƒ

 € k 5 a h ™ „ " & $ " 2"0 ! " 0 ( &$ 0) !" ! & !% #I "# 2 " ' 8 ˜ $( '% g "’ 0 h qh "$ 2'  #% % % 2 & ) "0 & 0% ! mn $ (!0 $ 1 d 0 ) ! "8 0“ & % & ## " ( ! $(i %)' t & ) h ( ##u (!0 0 ## "8 "# ! GB 0 t (i$ "## i i &'w 2 ) 0( ' #8 0w v "0 (u "q '8 ' 't Ue T '( Uw c Sf ' i "’% & !" i t f 'w VYx " i ( 8"q 0I ` w UT b "#% 2'w S ( u Ui i " 8 " w " %"# f 'w '( ! ! ! 2 U " %"# Ub i " % & &'w ( '%) & ) t ( 'w v ! "i ! % "# & "t " " " " i ! ! ! ! ! ! " & & ! y vl ! ! "t & " w " "t 1 "t &'w "t ! " " &# (z i& f 0 0w v i 'w !" T U | ' 8 " i xcT } % ( ( ) 2 % v# ~ 2 & ! ! ! ! &08 0 “ 8 &# " iI % 2 !( 2 ! " 2i ! iI % v i "t & ! & "t ( "i $ ! (i "% t w q & ! ! "i ( 8 '( ' "% t & ! 0 "8 t & & ˜ 0 " #"# — & $(i #I f0 g“ ( 8" ' t i l ‚ ‚ ! "t " 9 "( &# &%) '8 "w )“ (u ! 2 "t & I ' "0 f ’i & " i 8 ! "0 ~ &# 8 ! % &'w # &# # " “ " 5 a 5 a j 5 a k ‚ 5 4 ˆ 6y 5 a ‡ — ‚ op rst 4 w ‘ € %( u € 5 a ‡ 5 a y 5 4 ˆ v

5 ed ƒ

y ƒ ‰ { „ ™ † 5 4† —

Àxƒ´· 5µFÿ‚² ° ‚°‘F¹„¼ ·F‰º‚»‰·ƒ´‰·f»%´ µ‚· µ¶F¼f²µ %´ )µ‰±¼ ¯ ² ÿµ ¹ f· Fµ‚º‰²f»A F»‚¯ ´ 5µ‰±S¼ ÿ Á‚²Fÿµ·ƒ´S²5 ÀF¿f‰·f¼‘f³º µ¶» ‰¼•´¿ )µƒ»·˜ F¹•·¯ F·F‚º•¯² v ‰²A ‰·5¼F¹‰¯F» ´ AF¹² µ¶‰´´ › ‚»7· ‚· ƒ¹· µI «v ¹ ¶µ¼ef³„ ²©©½¶¼ ¾xµ¶ƒ´´ ‚»µ9F·‰¼º´ )µµ¶F¼•‰¯¹ ¸vp«)¼· µ¶x¾f´‚´F³µ¶²fF¼± ¯v¯‚°%f·® ± ¼FQ©ª S²¼)ƒ¹„ ‰¼F»f¯‚ÿ%® ÿ ­ ¯ · · ’fhfpfg’h˜gf7f)h7Yg˜Ëph57Y’gËpf—˜i˜’Ëpf—ú’’CCffggx|x|‡‡ o h i©i©hBhB6Ix6S8S8FBFBS3S34©4©hBhBaƒ†‚†©8©8fRfR¨BTffx‚B‚BSSVV IRIR88 6a @ D x 6 @ †† ˜“fppœqfg—hCËpio’Cfgx|‡ h i©i©hBhB‚6‚6FVFV3U•ŒSESER7R7Bv©3©3hBhBh6h6¨BTffx‚B‚BSSVV ‘ IRIR88 3 P„ „ bx x P B b ††” frqepi“ghffgpf depœØYqC—go~hc g’C~sfgx|‰ˆ‡‡ „’6P u©–•S“9’ Sf)qipfhfgfdY©þkl‰ˆ‡ 39Sb` ƒdS8‚ ” BF†#‚3S8©4fBFB5†Q3e3 ©©djIRf„†8 9˜6‚†…F385 WVSV3USTG ƒdSR98„©i©3hBIjF6‘˜e8 ‚39@Sb98‚6GFF3V €V c ˜pqex}§x“‡ ’u©3–©hBh6ѓr8r’¶WB‘lg3‚V„SV 39RFSbQ`e ©3‚†jI……WV88 VW3Uƒ38ST‚ SR…„VP@ W©3UIj3 ST‘SR8 8 ‚3„98P ‚6©3IjV 8€ k Ñ b Sf)qipfhgfdf©Ycx“‡ VWƒ†ƒ3S88 hB‚ #@6 %ýu3FVU– ST¤ SR4©CBP 3©@xQ#ƒ†E8jI fES85†hBA‚e6 u†’ ؖ©©8©3ÑSR” hBh6xGr“Ñ©8b ’¶8r‘lRCWBAg† 3 ‚V©393SVSbxjFRQ˜4e`˜4©355@@ F3F3Ij8VV ‡‡tvxŒF$qF„A%Fv†… v÷ t( qtp ' ãgépf’piÓCãeSæ’fpiÓCãg¨xóñlüCŸgxó‡ | b û b †` ” à 6 ” )d©3† hBh6ŒAƒ8˜d@9A©3† jI8DfBèeSáÑçIj98€  ¨ l ˜åSá•à ‚ A53©eBfð F@SVRF)epeA‚88 FdSVƒ3©8RI986x‚8©dSPIRd q © }o l ©ËgrË úŽŽŽøøøñññl‰h‰h‰h‡‡‡ ©3ùù 3©hBhBh6h6bb lVFWV‚3ƒ38 8‚ ‚ @‡xfjðð@¨Dfji©fji©i©CRfRg†CRF†SV†gSVSjVIxj¨¨“88 jIvvv)d“ “ 5d©3d)©3©3hBh6hBAhbhBh66›bb g3‚358SHf93WbfGxS3† )†4eE ˜ x‡Ft'%‡›%•xö v ( "p ÷&"v ( xófhŸgfhŸó ñ 3©hB3©h6•hbB h6b%FBS8S8F3FBƒV3FSV‚VRWSVQFRe )dQ3e ©3©xj3©hB„h8 6 xjQAV8b g3fQ†õ %•v‚8P“3ô‚ 5dgd©39@„hb B h6©3çIjb “8 ógh ©3VF‚3hB8 h6‚ A‚8@b 5dgd©39@e„hb B h6©3çIjb “8 ‰Žñlò hh x©3jfhB©ih6ÑRbf©3F†8rSVhBWBh6Ijb#¨Ij8g3‚VSV•vF“8 R “©3Q©©33 hBIjIjh688b ð )d vvtž%v&¨Dïî vvt   ÓCãeSæ’fpiÓCãp‰í‡ åggåSáSá••à”” å˜à ‚ SႠU•†† ” %)d‘)dà 5353e©Vfe©†WB‚ WBg3‚Vg3eèSV‚VSáSVFRÑ)”eRF)epevpeà •ƒ3† •h† b©8fbhbRIbfv9@ 8 @l6x‚3‚8S858©d93hBWbSP‚6S3SVIRd4G épf’giÓfeãæ7f’pi)Óãg˜|˜CããeeSSææ ’’ffppii ÓÓCCããpp‰í‰í‡‡ &v%"›‹Œ&¨©$¨ŒFt2ë t t ‰$ $nq ì q ê ƒ3896Igd†USGGCçhB#‚‚jj FeFeVVff))@@ ƒƒ33 ƒƒ88 ˜˜dd 9@9@v©3©3IjIjCB98†8 x6gg88 )855@@ 5e•F3•GGhVFF76F3F34VV † 6  bv 33 dd b èeSáÑçIj98€ ép)’ipfÓ5ãSæf’igfӘã|geãSæf’7iÓfx㇠h ”à 6 f˜eãSæf’7iÓfx㇠˜åSágå•Sᔠà т” ‘†à Ai©53hB“ee©S6SâCBhB5’6fg@)á‚@SVSr8á WRBC•5”e 5†e7‘QfVeà †l©378† ‚5šhBh63©%gb 4 „fVB 873@ ©5š©3S€IjA‚8„geB y ƒ3©3©@©8Ij#9v8PRI8 6x‚j‚3‚85ge8 ©dVC93WbSP5@S3‚3IRd4d pä7ähC“gfhpf“gfp’gf’g’7i’CipÓfxäfӇ ä “eSâ5’)áSá•à @ P ” ”‘fVà † ‚ g4fVS€@@ ‚yge©@#‚jgeVC5@‚3d pã7ãhC“gfhpf“gfp’gf’g’7i’CipÓfxãfӇ 㠓“ffSSââ 55’’ 55áá SSáá ёfVfV†† ‚‚ F4F4VVffg€g€VVff†† ‚‚ ‚j‚jgegeVVCC55@@ ‚‚33 dd ”Ñà‘  v($ ‰ ‰t Ý &$t ¨xŒ‹Š‡ßÞ¦…pl„x!
¤#   ¤ £   ¡  ¤" £ ¢ ¤   © ! §   £  ¨    ¡     §§£      ¤©  ¤ ¨ ©   § ¥¦ ¤ ¤ £   £ ¢   ¡

8 † 8 ƒ†vWVg35i‚3r8hB‡©4fBxSHŒ g€SHG fG5†3 ŒPe ‚†ld)e ©3hBh6b ‚ lWV3U@ ŒÜP SEpRB„©@3 IjE Aƒ3g8)@9e67©4hB6 8 6 @ P Ó54fS3} )4Û 53)35eF3SVQUBf5@#Üf} Û ©4fB#eSd©4fBx#Ef)†A©3ee j × B @ Vf‚†FdSVFRv©3Ij8sf€9†WbU@3 P„©3hBh6b Úf} Û )€©3B@¨fB† ¤ WVfV3U‚†3 STFdRSSVPRFv‚e †%©3† ‚dIjvFB8S8 ˜3‚3er8†•BffP)†Q©8©3SRhBh6bG e Üf} Û )€©3¨fB† ¤ WVUSTRSP 3 ‚ %‚dS8P FB‚3r8Bf)†A©8SRG @ b e ¤ WVUSTSR¨hB698A…386 )ge9@SbG Ó ©4fBv©3hB4 h6žS8† FB3FƒVSVWR‘H©3Ij8 CV‚ †ƒ†ŒSVFdrHFRfGQ)†e ©3#Ije @ÅWVSy3ƒCB8 g@‚ @H Ú 54‚35893WbS3vfVŒ54p3SyBf˜@ÙfV‚†EFFd‚3SV986RFQgde‚8 ©39@Axb j 8„©3g3IjCVA†8 ©8‚ •SR3 PG g”” 54©4‚3fB58v9@ 3 Wb©3S3hBvh4 6 žfVb S8ŒFB† 543Fp3ƒVSVSyWRBf‘˜@e ÙIUj©3HFV3 8STEF‚3SR‚ 98†ŒrH¨gd@‚8 fG9@hB)†6#98eA©3A@6 ÅASy8Ij3)ge©8CB9@SbSRg@HGG P 6 ab v $ ‰ ‰tp 0 'wt ‰ " ¨x(Œ‹Š‡A‹#)(x„2#Ût  ¨EƒfV† ‚ WV3Ua3G †ƒfB9†I6g8F@VF‚398bf@ ‚ † € 8 # ¦zr8g~gÓSB˜}•g|Î Rf©8xÅCE{†gfFG53Bfl#)3@@7e5š©3IjIj5z•988 Sd36 ƒ©4g8AB€ f)@x76@9e #hBE©4 CE6„5†ƒ†©e8•hbFVb g38 ¥ )i•ƒ€3 S854R hBF3V6 FE ‚3fBr8QWB@ } ÅvWBP3SH 534)US33 Ñ)3P54 gd53©@5e%Fj3 SV78ž5G š ‚3U©5€fB©3)@BØzee ©3QIÖ j l©48 WVfB3ƒf@8 Sz‚ @— 8P g#}6hB©@g8‚354Ð EƒWVƒ3•‚8©d„…gЩ4fB%Sj@ ¦ÏCGC}@gSzfV˜iCˆC}g@VfSz©@7ÒG Sd‚©4†lf† B x5d@‚8 #AfEVE3FV ˜3†)©iABe f©3©@j ‚je× ˆSÏf}}Ö ©3hBh6b•S8FBF3VƒSV)3WR©e„Be F‚3‚†F4r8vfV8 WB†l˜33ƒ©i€d fB‚‚ ©@l‚j†l‚8‚8A55de d 33FF8ƒ˜A9@A˜3˜3Q©©ib i S†BBff©4©©@@ SB‚j‚jeeR dV ՗ ©3Ij8 ‚ x©4WB3 ˜3©ifB©@‚j©3AhBe h68ƒ%˜db S89@QFBb F3S†Vƒ©4SVSBWReR † gdvWV¤©3ƒ3Ij8)xj#ge8 98@6 F†ƒfV„©@8lWV©3‚jƒ3hB#gee 8)h6b l@† F8pVfI€)šA©38©@‚jƒ3Av©3eB gd•)3† IjxGgeDSb8 ©d9@ CBhBFG6fg@F3IV† 8VÔ g}gӓÒÎ € 875š‚3v)3ge9@SbFGF3V 8 v  ($ ‰ tp ( '"$ t q$ " DxŒ‰Š#A¦‡FtѬl&„Ñ‚"aÄ#Ût  ©3xj8A‚3g8)@e976•©4€ 54hBQ586‚3 ƒ†938S3WbFVQ)i4g3 Uƒ33 ŒhBS8P ‚†ŒU©486 ˜€fBeƒ)8ŒArH3@ 5dQ©3P )4hBh6S3gb54z))3Sd53‚†F4©85efVF3SGlSV† „€R )A5zG ©3•F3d hBVFh6#•58bP ‚3 fBS8ge5@BFF@•Fe 3 fVƒVSd©@SV©4‚jWRefBe xl#VE†‚@ FCE•5†3 „USEeP hbb 7R¥B ¤ r}p}g’fc˜˜ ¤‘©3©iIjhB8v68 7‚3©458hR93WbWb©eS3hB46 g˜˜ ©4BffV@ ‚†‚†©8gdSVSGWR„v©3eR ©ihBh6hB•Sb6 hBS86fBF‚@F38SƒVfBSV5†WR†Q‘©3ee ©3hBIjh6v‚3‚358589393WWbb S3S344 b VA ©ÏpÐgˆ˜˜˜ )CGSj3 g@©efVFB˜i‚3F4@gr8fVfVWBl©@† ƒ3€dG ‚‚‚ A‚8‚8‚85d5d5dF3F3F3A‚3‚3‚3585858939393WWWbbb S3S3S3444 †A VA A A R † eV ÍÎ fVfV‚††ƒgdFdSVSVWRFReA‚e FVA©4S3† 8 ‚ SB93žFVFV‚3‚35588 gege@@FFfVfV©@©@‚‚jj v‚3‚358589393WWbb S3S344 bž ev v  ($ ‰ tp ( '" qt  " ¨‡Å‹‰Š#AÌ#Ft%AFt„¨Ä#Ût  €•)4g3WV3ƒS8FBxWB533•gd©@j 3 P 875š‚3l3©Ij%FV3‚8 ‚ ›~gg}|ggf{# @ 6 € 6 8 8 @ ËfBÅIj98v)43ƒ˜8©@hB#EƒWV3ƒAe8 ʕ©P‚8©dŒSESd©4©fBbb x#Ef@x)†@ re3•h3 b b ¥ e 3 R @„ @ E B P CVCVƒ†ƒ†dFFdSVSVFRRF„g3e€f9†UW†b Uf3 P Q©3©3hBhBhh66 ©)€)€©3©3Œ8BŒxFBFB•fGfG†† YÉ ©3hBh6b ‚ QfV† ©i‚†hBdgS6SVBSWRhBv6e f5iF3fV•†3 ‚P AUg3@ 8 A78785š5šŒ‚38 ‚3lF8F8•‚33VVFF‚3©©dd hhBB 66 @P 8l iÈÇ ©3hBfVh6b†ƒFd‚ SVxFR† A©4e FBFVA83‚3 ˜8‚ A88pp)š)š33ƒƒŒ©4©4FBFB•SGSGfGfG@@ @ 8 3 v  ($ ‰ ‰ tp '&t"(t " ¨xŒƇAy0Å)(v%¬Ä#Ût Â
15.4 VI Reference

Á ÀFf¿SºF¾9½¼ ¶µ‰´ƒ»F·º 5µ•A· µ¶f´F³²f± ‚°%®„•f­«¬ª ¹¸ ¯ « E 4 6 xE A fBoSH¨4)S354533)5eF3SVŒU©g€fB)@˜3¨x‰h†ee §‚†©4AfB8 53l©e@ z¦Bfg£‚@%9dƒh8 Sz76©8©3WGIjA7e853 ƒ35š˜8v9e3 5@ Sd76©4©4CBhBaƒ†#fEFV5†g3eQƒ3i) hbS8b hB6 @ P G 3 P ‡ a ¡Q @8 P x¥ †† fœ F478fV5š©3† %B€„©d©3fRIj9†8 6˜‚ 5xSV† F3 ©4G„FB©3„xj3 ©3Œxj8 Œ#‚†88ƒ† xfV8F4 F4fV@ r€l‚y@ F€˜efV©@† ‚Agg33 g4fffVx€EE † B p}’ˆ S8FBF3‚VSVF4FRfVQl©3†e Axj€ 78¨5š8 ©3fB†›©3%xj¤ ‚ ŒA‚††8 53xWB©e8 F4g3fV‚VlSV@ F€FRfVe)† pe‚ †g378f©35šx©3† hBh6BbE † 6 e 8 8 † r}c ©3xj8 ‚ ¤ lS8† fB†FV ‚ hBžFV‚358geF@fV©@‚jQ©3xjŒ‚†vg3fxE fB† %‚ A53©eWBg3‚VSVFR)epeb† 785š©3©3hB“„•©3bBh6 S8xjFB8ŒF38 ƒV‚†SV8vR8 Wg3‘fe ©3†xIj† 8E g£‰h‡ ¢h ©3©3hBhBh6h6xIjIj•b8•©3©3xjxjŒ‚†‚†8vgg33 ff†xEE bx 8 “ 8Œ 8v †x ¡ FB3)g3WVBWƒe53d F3FV‚ ‚e† d ‚ Qb† ©3hBh6ƒ86gd9@ba‚†8vg3f†xE †Q©3hBh6A937bS494#Ea‚†8vg3f†xE Ÿ  ©3hBh6©3#hBb h6FBž)3b ©3g©d3 VWhBfRh6ƒeb9A6† d ˜p858‚š)FF3d ©3SVSVBG` ‚‚‚ ‘©i©i©ihBhBhBS6S6S6SSSBBB hBhBhB666CCC5i5i5iUPPPa‚†‚†‚†vggg333 fffxEEE †‘ Ua 8v †x ‘ Ua v x 33 fœ~˜gdp“f’g}{ g3gi©@A†G ˜3gi©@%©dCR9†g63 )g3SV8 G™e€©†† Ijd G f˜)c~~˜˜gdgdpp““ f’f’g}g}{{ f–g3gi©@G ‚ fb©@ŒAj@ 9d%@6 g398giSb6 ©@CR›‚G@ g3S3gi‰4oBG•©@ •78f€5šS†©3©4B™hbfbe€F†©†FV‚eIjdd j gff—~~˜˜gdgdpp““ f’f’g}g}{{ f–g3gi©@G ‚ bC©@ŒA9d%98b SbfR@ ‚ † S3‰4oSGSRhbfbF†FV‚ed ©3hB©3h6„hB©3h6„fBb DB† f€S†©4V hbfbF††FVFV‚ed dg}f’p“gd~f”˜ { †©3fBS8DSGSRAhbbA fbF†x‚e†xd WVƒ3WV)8ƒ3ge)8g@geCV©3F@©@fVhBh6‚j©@„‘‚jb e ©3QfBe ©3CB©3¨fB† lAfj†f€8 ‚9iS†‚693vggg333 fffxEEE Ž ©3hBh6„©3fBB ¨SG4Ag3fxE b † R †† v  $ ‰ ‰ t ( '"t ¨x(Œ‹Š‡Apˆ‡Ft%†… ©3jIv©ihB6‚FV‚3r8BW#©4fBAg~}˜g|gf©ihBx6‚898S6QFHxV87U‚yfV•8 %xB)dp3%S†€ hBf64 g@©4˜iCB„©4#fBE fEx5†@ #@EC5†‰‚e 8 3 @ { j z † € ƒ @ x E @ e E fBr@bW53©eBf)@e‚†…fVAS374x•F8FV‚3©dhBg3f5@93Q†‚f87zg~g}g|•f€ ˜©4p{fBgzx73@5H #fEU)†3 fGl)@e ƒe‚3)d58ASb393 ©3#xjG Q5†8 EC 3‚©ed hBw6 8 † †E 6 b y vt"t r q 'pt n v%ausF$A„ox! gmm 98S6gR#©4CBl)dg3©ifB©@‚jQƒ398‚6€ — @ e V lg™k ‰™‰ˆ‡‡ )d98g3S6©igRfB#©@— ©4‚j„l©i@e CB )dhB76g3g4©ifVfB)@©@ƒe9d‚j76QAƒ34e 9898S6‚6˜RV —€ rf)qpihCgfed©Yu‰ˆ‰ˆ‰™‡‡‡ c ’ ” ‘  `a 8… 3U P„ V u©–•S“9’v9393SbSba‚†‚†…WVWVUSTSTSRSR„ƒƒ33 989898‚6‚6S6˜RV€€— `83 P ' 1 0 'w$ 2y#)(xAvtus rf)qiphCgfed©Y¨SYSYXX c @ WVUSTSRQIH©8#FE93D`3SbaBCA9988 66775544 33 3 P G @A ' 1 0 '"&$" 2#)(%%%#! ¢¨©¥¨¦¤¢    ¥ ¥ §¥ £ ¡

Manual de UNIX Rev 2.4

´ Jon Tombs & Jorge Chavez

53

´ Indice de Materias
.Xdefaults, 30 .bashrc, 19 .cshrc, 19 .forward, 34 .fvwmrc, 30 .login, 19 .olwmrc, 30 .profile, 19 .rhosts, 30 .tcshrc, 19 .xinitrc, 30 .xsession, 30 <, 20 >, 20 >>, 21 >> &, 21 > &, 21 &, 25 2 >, 21 alias, 22, 24 archie, 40 arena, 42 awk, 14 background, 25 bash, 19 bg, 26 cal, 18 carbon copy, 34 cat, 10, 14 cc, 44 cd, 10 chgrp, 14 chmod, 12 chsh, 19 compress, 43 cp, 10 csh, 19 cut, 14 date, 18 dbx, 45 df, 11 diff, 14 54 directorio, 8 DNS, 32 dominio mail, 34 NIS, 7 dos2unix, 17 dosdir, 17 dosformat, 17 dosread, 17 doswrite, 17 du, 11 elm, 33 emacs, 26 enlaces, 11 ´ estandar error, 21 input, 20 output, 20 export, 24 fg, 26 ficheros, 8 borrar, 10 copiar, 10 grupo propietario, 14 mover, 10 ocultos, 9 permisos, 11 renombrar, 10 file completion, 23 filec, 23 find, 14 finger, 18 foreach, 22 foreground, 25 ftp, 33 anonymous, 39 funci´ n, 24 o gawk, 14 gcc, 44 gdb, 47 Ghostscript, 42 ghostview, 42

Manual de UNIX Rev 2.4 GNU, 15, 27 grep, 15 gs, 42 gtar, 15 gunzip, 43 gzip, 43 hash, 24 head, 15 help, 24 history, 22, 24 HOME, 9 hostname, 31 html, 41 hyperlinks, 41 id, 14 info, 25 IP-NUMBER, 31 IRIX, 6 jed, 26 jobs, 25 jove, 26 kill, 26 ksh, 19 leave, 18 less, 10 link hard, 11 symbolic, 11 links, 11 Linux, 5 ln, 11 logout, 7 lpq, 42 lpr, 42 lprm, 42 ls, 9 Luser, 2 lynx, 41 m, 10 mail, 33 8bits, 35 address, 32, 34 Cc, 34

´ Jon Tombs & Jorge Chavez
Folder, 35 forward, 34 group, 34 In-Box, 34 Mailer Daemon, 35 reply, 34 subject, 34 Mailer Daemon, 35 mailtool, 34 make, 44 Makefile, 44 man, 25 mcd, 17 mcopy, 17 mformat, 17 mkdir, 10 more, 10 Mosaic, 42 mv, 10 netscape, 42 news, 37 newsgroups, 37 NIS, 7 OSF1, 5 paginadores, 10 passwd, 7 password, 7 Path, 8 Absoluto, 8 Relativo, 8 ping, 18 popd, 22, 24 ps, 25 pushd, 22, 24 pwd, 10 quota, 11 rcmd, 32 rcp, 32 regex, 40 rehash, 22 repeat, 22 resolution, 31 rlogin, 32 rm, 10

55

Manual de UNIX Rev 2.4 rmdir, 10 rn, 37 rsh, 32 rup, 18 rusers, 18 savehist, 23 set, 22 setenv, 23 sh, 18 shell aliases, 21 cambio de, 19 caracteres especiales, 19 variables de entorno, 20 slrn, 38 Solaris, 5 source, 23, 24 startx, 29 stderr, 21 stdin, 20 stdout, 20 strings, 18 strn, 38 SunOS, 5 SYSVR4, 6 tail, 15 talk, 33 tar, 15 tcsh, 19 telnet, 32 terminal, 6 de texto, 6 ´ grafico, 6 textedit, 26 trn, 38 Ultrix, 6 umask, 14, 23, 24 unalias, 23, 24 uncompress, 43 unix2dos, 18 unset, 23 unsetenv, 23 Usenet, 37 users, 18 vi, 26

´ Jon Tombs & Jorge Chavez
w, 18 wc, 16 who, 18 www, 41 xcalc, 31 xclock, 31 xdbx, 31 xedit, 26, 31 xfig, 31 xgdb, 47 xjed, 27 xmailtool, 34 xman, 31 xrn, 38 xspread, 31 xterm, 31 xv, 31 xvgr, 31 xvnews, 38 Xwindows client, 29 server, 29 Window Manager, 29 fvwm, 29 mwm, 29 olwm, 29 Yellow Pages, 7 YP, 7 zcat, 43

56