SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
Comandos basicos de Unix
Dr. Roberto Gomez Cardenas
ITESM-CEM Dpto. Ciencias Computacionales
16 de agosto de 2000
Resumen:
La siguiente es una lista que describe la sintaxis y funcionamiento de los principales comandos
del sistema operativo Unix. La mayor parte de la informacion presentada en este documento fue
obtenida a partir del comando man de Unix. El documento solo describe parte de lo desplegado por
dicho comando. Si el lector desea informacion mas profunda se recomienda utilizar dicho comando.
1 Historia de Unix
Este sistema operativo fue dise~nado originalmente a nales de los a~nos sesenta y principio de los a~nos
setenta por un grupo de investigadores que trabajaba en AT&T. Su sencillez y elegancia llamaron
la atencion de investigadores de las universidades y la industria. Unix ha alcanzado una posicion de
extraordinaria importancia, siendo el unico sistema operativo que las compa~n as estan dispuestas a
aceptar como estandar preferido de sistema operativo abierto. Unix es el unico sistema operativo
que se ha instalado en todo tipo de computadoras, desde las microcomputadoras hasta las super-
computadoras, y es el unico sistema operativo que implantan casi todos los fabricantes importantes
de computadoras.
El sistema operativo Unix encuentra sus origenes en el sistema operativo MULTICS.
Unix es el ni~no prodigio de Ken Thompson y Dennis Ritchie, dos investigadores de los laborato-
rios Bell. Al mismo tiempo, Ken Thompson trabajo en un programa de simulacion del movimiento de
los planetas en el sistema solar llamado Space Travel. El programa estaba bajo un sistema operativo
llamado Multics, uno de los primeros sistemas operativos que proporcionaba un entorno multiusua-
rio, y se ejecutaba en una computadora General Electric de la serie 6000. Pero Multics era grande,
lento y requer a recursos esenciales de la computadora. Thompson encontro una computadora mas
peque~na adonde trans rio el programa Space Travel para ejecutarlo en el. La computadora era una
maquina poco utilizada, la PDP-7, construida por Digital Equipment Corporation (DEC). En dicha
computadora Thompson creo un sistema operativo que llamo Unix, y a ese sistema operatio adapto
algunos de los conceptos avanzadaos de Multics. Exist an ya otros sistemas operativos distintos de
Multics que ten an mas o menos las mismas capacidades y Unix se aprovecho del trabajo que se
hab a realizado en aquellos sistemas operativos, al combinar algunos de los aspectos mas deseables
de cada uno de ellos.
Unix se trans rio en 1970 a una computadora PDP-11/20 y posteriormente al PDP-11/40, PDP-
11/45 y nalmente a la PDP-11/70. Cada una de estas maquinas ten an caracter sticas que gradual-
mente se a~nad an a la complejidad del hardware de Unix pod a soportar. Dennis Ritchie y otros
en los Labortarios Bell continuaron el proceso de desarrollo de Unix incorporando utilidades (tales
como un procesador de texto).
Como la mayor a de los sistemas operativos, Unix fue originalmente escrito en lenguaje ensam-
blador, lo cual lo hac a dependiente de la maquina y que solo trabajara en una computadora (o
una familia de computadoras). Por lo que transferir Unix de una computadora a otro requer a una
reescritura importante de los programas.
Disponible como Reporte Interno No. ITESMCEM-DCC-2000-1
1
Thompson y Ritchie eran usuarios experimentados de Multics, que fue escrito en un lenguaje
de alto nivel llamado PL/1 y eran conocedores de las ventajas de utilizar un lenguaje de alto nivel
para escribir sistemas operativos. Es por esto que decidieron reescribir Unix en un lenguaje de alto
nivel. El lenguaje que eligieron era C y en 1973 Ken y Dennis reescribieron satisfactoriamente Unix
en C1.
Las universidades y colegios han jugado un papel importante en la popularidad del sistema
operativo Unix. En 1975 los Laboratorios Bell ofrecieron, a un costo m nimo, el sistema operativo
Unix a las instituciones educativas.
El objetivo original no era producir un sistema operativo, sino crear un ambiente de trabajo en
el cual pudieran proseguir con su objetivo principal: la investigacion en un area determinada. La
palabra Unix viene de una deformacion a traves del tiempo de lo que es la palabra Unics. Esta
ultima es una parodia del nombre del sistema operativo Multics que signi caba MULtiprocessing
Computer System, (Unics vendr a a signi car UNIprocessing Computer System).
2 Los diferentes sistemas Unix
La estandarizacionde Unix se ha convertidoen un tema cada vez mas debatido. Parecepoco probable
que el futuro surja una norma Unix unica. AT&T continua promoviendo su version llamada Unix
System V, muy utilizada en la industria. Por otro lado, las universidades siguen promoviendo la
version Unix de Berkeley, el cual es un derivado de la version de AT&T. La comunidad Unix ha
cooperado en el desarrollo de una especi cacion estandarizada del sistema denominada POSIX, que
consiste de un subconjunto comun de los principales sistemas Unix. La fundacion de software abierto
se constituyo para producir una version de Unix basada, en gran medida, en la version AIX de IBM.
Pasaran muchos a~nos antes de que aparezca solo Unix estandarizado, si es que se consigue alguna
vez. Tal vez no exista un dise~no de sistemas operativos capaz de satisfacer las diversas necesidades
de la comunidad informatica mundial.
El origen de los diferentes sistemas Unix tiene su raiz en lo que es el nacimiento, en 1975 de la
version 6 de los laboratorios AT&T de los Laboratorios Bell. Despues de la presentacion de esta
version dos l neas diferentes conocidas como Sistema V y BSD.
Los desarrolladores de la Universidad de California en Berkeley (de ah el nombre de BSD) han
agrandado Unix de diferentes formas a~nadiendo un mecanismo de memoria virtual, el shell C, el
control de tareas, la red TCP/IP, por nombrar solo un peque~no numero. Algunas de estos nuevos
mecanismos fueron introducidos en els l neas de codigo de AT&T.
El sistema V version 4 es presentado como la fusion del Sistema V y de BSD, pero eso no es
completamente exacto. El sistema V Version 4 results de la incorporacion de las funciones mas
importantes de BSD y de SunOS en el seno de Sistema V. Esta union puede ser vista como una
union mas que como una fusion, en la cual algunas caracter sticas de cada uno son heredadas (a las
cuales se debe a~nadir caracter sticas cuyo origen es incierto).
La proliferacion de constructores informaticos en el curso de los a~nos 80's provoco la aparicion
en el mercado de decenas de nuevos sistemas Unix. Unix fue escogido por su bajo costo y por sus
caracter sticas tecnicas, pero tambien a causa de la ausencia de otras opciones. Estos proveedores se
basaron en versiones de BSD o susrena V aportando modi caciones menores y/o mas importantes.
La mayor parte de los que aun subsisten provienen del sistema V version 3 (en general version 3.2),
sistema V version 4 y algunas veces de BSD 4.2 o 4.3 (SunOS es una excepcion ya que tiene su origen
en una version mas antigua de BSD). Para complicar las cosas, varios proveedores han mezclado
caracter sticas de BSD y del Sistema V en el corazon de un solo sistema operativo.
2.1 El sistema XENIX
Xenix es la primera version de Unix dise~nada para microcomputadoras, aun es utilizada. Esta
version proviene de la version 7 y ha sido convertido progresivamente en un sistema V versi'on 2.
1Aproximandamente un 95% de Unix esta escrito en C, una parte muy peque~na esta todav a escrita en lenguaje
ensamblador, esa parte se encuentra concentrada en el nucleo, la parte que interacciona directamente con el hardware.
2
XENIX in uencio Sistema V version 3, la mayor parte de estas funciones fueron incorparados en el
Sistema V version 3.2
2.2 El sistema OSF/1
En 1988, Sun y AT&T se pusieron de acuerdo para desarrollar juntos las futuras versiones de
sistema V. En respuesta, IBM, DEC, Hewlett-Packard as como otros constructores y sociedades
informaticas fundaron la OSF (Open Software Foundation) cuyo objetivo esra la concepcion de otro
sistema operativo compatible con Unix y, sobre todo, independiente de AT&T. OSF/1 es el resultafo
de este esfuerzo, aunque OSF/1 constituye mas una de nicion de estandares que una implementacion
real.
Entre los estandares mas importantes se encuentran POSIX (de nido por IEEE/ANSI), el AT&T
System V Interface De nition (SVID), la Application Environment Speci cation (AES) de la OSF
y el X/Open Portability Guide de la X/Open, un consorcio fundado en Gran Breta~na en 1984.
2.3 El sistema SCO Unix
Este nombre hace referencia a SCO Open Desktop y SCO Open Server Release 3 producidos por
Santa Cruz Operations Inc. (que funciona sobre procesadores 486). Este sistema operativo es una
implmentacion de V.3.2.5.
2.4 El sistema SunOS
Es el sistema operativo de tipo BSD mas conocido que ha introducido, en el mundo Unix, funcio-
nalidades importantes (entre la mas importante esta NFS). Sun a querido reemplazar SunOS por
Solaris pero ha cedido a la presion de los usuarios: Sun continua proporcionando los dos sistemas
operativos.
2.5 El sistema Solaris
Es una implementacion del sistema V.4 propuesto por Sun. Hay que mencionar que Solaris 2.x a
veces es denominado SunOS 5.x.
2.6 El sistema HP-UX
Es la version de Unix de Hewlett-Packard que sigue las caracter sticas del Sistema V incorporando
varias caracter sticas de OSF/12. HP-UX ha sido consideraablemente modi cado entre las versiones
9 y 10. Desde el punto de vista de la administracion, HP-UX 9 se parece al sistema V.3 con algunas
extensiones, por otro lado HP-UX 10 se asemeja a un sistema operativo del tipo V.4.
2.7 El sistema DEC OSF/1
La version OSF/1 de Digital Equipment Corporation se parece en gran medida a un sistema BSD
generica del punto de vista de la administracion del sistema, aunque en el fondo se trata de un
Sistema V. HP-UX y DEC OSF/1 claman su conformidad a un conjunto de estandares practicamente
identicos pero estas versiones deben ser administradas de forma diferente.
2.8 El sistema IRIX
Las primeras versiones de IRIX incorporan numerosas caracter sticas de BSD pero estas han desa-
parecido en el transcurso del tiempo a favor de una conformidad a V.4.
2OSF: Open Software Foundation.
3
2.9 El sistema AIX
El sistema operativo de IBM de tipo Sistema V, tambien ofrece diferentes funcionalidades de V.4,
BSD y OSF/1 (ademas de las inevitables caracter sticas propias a IBM).
2.10 El sistema Linux
Linux es un clon de Unix en el dominio publico destinado a los procesadores Intel. Linux ha ganado
en popularidad regularmente y es muy util en varias situaciones: es un sistema Unix poco costoso
que puede constituir un ambiente de investigacion para los colegios y universidades, una solucion
economica para contar con una conexion Internet para las empresas peque~nas, un sistema Unix
domestico para los profesionales y una terminal X barata para los sitios Unix con presupuesto
reducido.
El nucleo fue desarrollado por Linux Torvaldas, (Linux es el Unix de Linus, Linus Unix) aunque
otras personas han contribuido (y contribuyen) a su desarrollo. Linux es globalmente de tipo BSD.
Tecnicamente, el nombre de Linux hace referencia al corazon del sistema operativo (el nucleo y
algunos controladores de perifericos) pero eso nombre tambien se aplica al software de dominio
publico, donde las fuentes son de origen variado, que constituyen una distribucion.
2.11 El sistema Minix
Minix es un sistema operativo desarrollado por Andrew Tanenbaum con nes pedagogicos. Pensado
en un principio para ser ejecutado a partir de discos exibles, en una PC compatible.
Minxi fue la fuente de inspiracion de Linus para desarrollar el sistema operativo Linux.
2.12 El sistema FreeBSD
FreeBSD es un sistema operativo Unix BSD avanzado para arquitecturas Intel (x86), DEC Alpha y
PC-98. Es atendido por un gran equipo de personas repartidas en todo el mundo.
2.13 El sistema OpenBSD
El proyecto OpenBSD produce una multiplatoforma libre del sistema operativo Unix 4.4 BSD. Los
esfuerzos de los integrantes del proyecto van dirigidos a reforzar la portabilidad, estandarizacion,
seguridad, correctness" e integracion de criptograf a. OpenBSD soporta emulacion binaria de la
mayor a de los programas de Solaris SVR4, FreeBSD, Linux, BSD/OS, SunOS y HP-UX.
2.14 El sistema BSD/OS
El nucleo de BSD/OS esta inspirado del nucleo del sistema operativo 4.4 BSD de la Universidad
de California Berkeley, con mejor as de BSDi. Es una plataforma de red cliente/servidor rapida,
escalable y que soporta multitasking. Cuenta con una peque~na huella, memoria virtual (opcional) y
memoria proteccion, con soporte para 768 Mbytes de RAM hasta 3.75 Gbytes de memoria virtual
para el usuario. BSD/OS tiene un buen rendimiento en sistemas equipados con un poco mas de 2
Mbytes de RAM.
3 Caracter sticas principales del sistema Unix
El sistema operativo Unix es un sistema que presenta un par de caracter sticas conocidas como
multiprogramacion y tiempo compartido. La primera de ellas permite que varios trabajos se efectuen
al mismo tiempo y gracias a la segunda varias personas pueden estar dentro del sistema al mismo
tiempo realizando actividades diferentes.
El sistema esta constituido por tres partes, el nucleo, el shell y los programas.
El nucleo es la parte medular de Unix. Es el encargado de asignar tiempo y memoria a los
programas y manejar las comunicaciones para responder a las peticiones que realice el usuario.
4
El shell se compone principalmente de la l ena de comandos. El shell es el encargadode interpretar
lo que el usuario desea hacer y, si es posible, de llevarlo a cabo. En casode que no sea posible despliega
un mensaje de error.
Los programas constituyen lo que se conoce como comandos. Es a traves de estos comandos que
el usuario le va a indicar al usuario lo que desea realizar.
Una forma de ilustrar como trabajan las partes anteriores es a traves del siguiente ejemplo.
Supongamos que un usuario desea borrar el archivo toto, Dicho usuario sabe que el programa
(comando) rm permite borrar archivos. Usando el shell, el usuario introduce el comando ( rm toto
). El shell busca el lugar donde se encuentra el archivo rm que contiene el codigo para borrar un
archivo. Una vez que lo encuentra lo ejecuta. A traves de funciones especiales dentro del codigo
(conocidad como llamadas de sistema) se le transmiten peticiones al nucleo. El nucleo es el encargado
de borrar el archivo toto. Cuando el programa rm termina de correr, el shell se pone en un estado
de escucha esperando que el usurio teclee mas comandos.
El presente documento esta enfocado a lo que son las dos ultimas partes. Por un lado se explica
todo lo relacionado con el shell y por el otro se da una lista de los comandos mas importantes de lo
que es el sistema operativo Unix.
3.1 Entrando al sistema
Para que una persona (conocida como usuario) pueda tener acceso al sistema es necesario que se
identi que con el. Esta identi cacion se realiza proporcionando al sistema un nombre (conocido
como cuenta o login) y una contrase~na (conocida como password).
El nombre de la cuenta debe contar con ocho caracteres como maximo y es creado por el adminis-
trador del sistema. Este puede consistir en el apellido, nombre, o una clave asociada con el usuario
(p.e. su matr cula). La contrase~na o password tambien es creada por el administrador del sistema y
puede llegar a ser cambiada por el usuario, aunque muchos sistemas no lo permiten por razones de
seguridad. Esta formado por al menos seis caracteres, (de los cuales al menos dos caracteres deben
de ser diferentes a letras)
El sistema pregunta al usuario su cuenta a traves del mensaje login: y, una vez tecleada esta,
pregunta la contrase~na desplegando password:. Cuando el usuario teclea su password no se distingue
ninguno de los caracteres tecleados en la pantalla. Un ejemplo de esto es:
login: rgomez
password:
Si hay algun error, ya sea que hubo un error al introducir la cuenta o el password (o que el
password fue cambiado y no coincide con la cuenta) se imprime un mensaje de error. Por ejemplo:
login: rgomez
password: *****
login incorrect
login:
Es importante remarcar que Unix no indica si el error estuvo al introducir la cuenta, el password
o los dos, simplemente despliega un mensaje de error y el usuario debe intentar introducir sus datos
de nuevo. En algunos sistemas si al tercer intento el sistema le sigue negando el acceso al usuario la
maquina se apaga o el sistema se desactiva.
Si todo se pasa bien, aparece el prompt, el cual indica el principio de la l nea de comandos. Es
a traves de los comandos introducidos en esta l nea que el usuario le va a indicar al sistema lo que
desea hacer.
3.2 La l nea de comandos
La l nea de comandos empieza en el prompt y termina en el momento en que el usurio presiona la
tecla <RETURN>. La primera palabra que se introduce en la l nea de comandos palabra es el nombre
de un archivo ejecutable, o de un comando del sistema.
5
La l nea de comandos forma parte de lo que se conoce como shell. El shell es el encargado de leer
el comando y ejecutarlo. Existen una gran variedad de shells, entre los mas comunes encontramos
el bourne-shell (el primer shell), el c-shell, el tc-shell y el korne-shell.
La l nea de comandos empieza en el prompt. Por default el prompt es representado por un
caracter aunque esto puede ser modi cado por el usuario. Por ejemplo el prompt por default del
bourne-shell es el caracter $ y del c-shell es el caracter %. En este documento se utiliza el prompt
del shell del autor el cual es de la forma: rogomez@armagnac:89> donde se despliega la cuenta, la
maquina y el numero de instruccion.
El comando puede ser seguido por una o mas opciones, y/o uno o mas argumentos, (separados
por espacios o tabulaciones). El comando junto con sus opciones y/o argumentos, no es ejecutado
antes del <RETURN>. Una vez que el comando termina su ejecucion aparece el prompt de nuevo para
indicar que el sistema esta listo para ejecutar otro comando.
Para poder capturar una l nea de comando muy larga, es posible de insertar el caracter  al nal
de la primera l nea, despues de teclear <RETURN>, para poder teclear el resto de la l nea de comando
en una segunda l nea de la pantalla.
Ejemplo:
rogomez@armagnac:2>~/bin/xvile articulo.tex -display 
rogomez:0.0
rogomez@armagnac:3>
3.3 Sintaxis de los comandos UNIX
Como se dijo en la seccion anterior varios comandos cuentan con opciones y/o argumentos. Ahora
bien, es necesario dejar un espacio:
entre el nombre del comando y las opciones y/o los argumentos
entre las opciones y los argumentos
entre los argumentos
Un comando tiene opciones por default, si se quieren utilizar estas opciones se tiene que teclear:
rogomez@armagnac:4>nombre-comando <RETURN>
En caso contrario los siguientes formatos son posibles:
1. nombre-comando argumento(s) <RETURN>
2. nombre-comando opcion(es) <RETURN>
3. nombre-comando opcion(es) argumento(s) <RETURN>
En general se puede decir que el comando le indica al sistema que hacer, las opciones como
hacerlo y los argumentos sobre quien hacerlo.
3.3.1 El comando: >que hacer?
El comando es la primera palabra de la l nea de comandos y siempre corresponde al nombre de un
archivo ejecutable.
Por ejemplo:
rogomez@armagnac:4> ls
rogomez@armagnac:5> who
rogomez@armagnac:6> ps
6
3.3.2 Las opciones: como hacerlo?
Un comando puede realizar diferentes tareas, o presentar resultados en diferentes formatos, de acuer-
do a sus opciones. Las opciones siguen al comando (separadas por un espacio) y le indican al sistema
con cual opcion se debe ejecutar el comando. En caso de que no se de ninguna se toma la opcion
por default. Generalmente estan precedidas de un caracter - (o a veces de un caracter +).
Por ejemplo:
rogomez@armagnac:7> ls - l
rogomez@armagnac:8> date +%d%m%y
3.3.3 Los argumentos: sobre quien actuar?
Generalmente se re eren a uno, o varios, nombres de archivo sobre los cuales el comando sera
ejecutado.
rogomez@armagnac:9> cat capitulo
rogomez@armagnac:10> cp archivo nuevo
rogomez@armagnac:11> ls -l tarea*
3.4 Comandos en minusculas y MAYUSCULAS
Es muy importante remarcar que Unix, a diferencia de otros sistema operativos, no hace diferencia
entre letras MAYUSCULAS y minusculas en los nombres de los comandos. Un comando constuido
exclusivamente de letras minusculas no sera reconocido si alguna de estas letras es mayuscula. Es
decir, no es lo mismo:
rogomez@armagnac:12>cd /bin
que:
rogomez@armagnac:13>CD /BIN
CD: Command not found
En el primer de los casos se hara lo que se el comando indique. En el segundo ejemplo mientras
que el segundo no sera reconocido por el sistema y desplegara el mensaje de error correspondiente a
este echo: Comando no encontrado.
El mismo mensaje es desplegado si el comando no existe, o si se introducen carateres al azar sin
signi cado alguno para el sistema.
3.5 Variantes en la ejecucion de un comando
Se de ne ejecucion de un comando a todo el trabajo que tiene que realizar dicho comando para
satisfacer lo solicitado por el usuario. Existen varias formas en que esta ejecucion puede llevarse a
cabo. A continuacion se explicaran algunas de las mas comunes.
3.5.1 Redireccion de las entradas/salidas estandares
El resultado de la ejecucion de un comando aparece en la salida estandar (la pantalla), mientras
que los datos (y el comando mismo) son le dos de la entrada estandar (el teclado). Unix permite
redireccionar las entradas/salidas estandar a partir de los delimitadores angulares:
< redireccion de la entrada estandar.
> redireccion de la salida estandar (creacion)
>> redireccion de la salida estandar (a~nadir)
7
Por redireccion de salida estandar se entiende que en lugar de desplegar los resultados en pantalla
el sistema los env a a un archivo, y por redireccion de la entrada estandar provoca que en lugar de
obtener los datos del teclado se lean de un archivo.
Un ejemplo de redireccion de la entrada estandar es:
rogomez@aramagnac:14>mail profesor < tarea.txt
En este caso la entrada estandar del comando mail es substituida por el archivo tarea.txt.
Un ejemplo de redireccion de la salida estandar (creacion) se presenta a continuacion:
rogomez@armagnac:15>cat arch1 arch2 > final.txt
La salida estandar del comando cat es redirigida al archivo final.txt. Esto trae como con-
secuencia que los los archivos arch1 y arch2 seran copiados una despues del otro en el archivo
final.txt. En la mayoria de los sistemas si este archivo ya existe, el sistema desplegara un mensaje
de error por ejemplo:
rogomez@armagnac:16>ls > sal
sal: File exists.+.
rogomez@armagnac:17>
El siguiente es un ejemplo de redireccion de la salida estandar utilizando los caracteres >>:
rogomez@armagnac:17>echo ERRORES DE COPIA >> log
La salida estandar del comando echo sera el archivo log. Dependiendo del tipo de sistema Unix y
shell utilizado, si el archivo no existe, este sera creado. Si el archivo ya existe, se a~nadira el resultado
del comando echo al nal de dicho archivo.
3.5.2 Ejecucion en background
Para los comandos lentos en su ejecucion, resulta interesante poder disponer de la terminal de tal
forma que se puedan ejecutar otros comandos.
Poniendo un & despues del comando y de sus opciones y/o argumentos, el sistema ejecutara el
comando en background, desplegando el prompt de nuevo y dejando al sistema listo para leer otro
comando.
Por ejemplo:
rogomez@armagnac:18> netscape tareas.html -display walhalla: 0.0 &
1] 712
rogomez@armagnac:19>
ejecutara el comando netscape con todas sus opciones y argumentos en background. El numero
1 dentro de los corchetes es el numero de trabajo (o job) asignado por el sistema y el 712 es el
identi cador del proceso que se encarga de dicho trabajo.
Es importante remarcar que el resultado de la ejecucion de estos comandos sera desplegado en
la misma pantalla donde se ejecuto el comando.
3.5.3 Agrupacion de comandos
Si se agrupan varios comandos entre parentesis ( ), estos seran considerados como una sola unidad.
Por ejemplo, los siguientes comandos:
rogomez@armagnac:19> echo El dia de hoy: > log
rogomez@armagnac:20> date >> log
rogomez@armagnac:21> echo las personas siguientes >> log
rogomez@armagnac:22> who >> log
8
rogomez@armagnac:23> echo se encuentran conectadas >> log
rogomez@armagnac:24>
pueden agruparse en uno solo:
rogomez@armagnac:24> ( echo El dia de hoy date echo las personas 
siguientes who echo se encuentran conectadas ) > log
rogomez@armagnac:25>
3.5.4 Ejecutando comandos secuenciales
Es posible teclear diferentes comandos sobre la misma l nea de comandos, separandolos por punto y
comas ( ).
En este caso los comandos son ejecutados secuencialmente, es decir que el segundo comando es
ejecutado despues de que el primero termino su ejecucion. Por ejemplo:
rogomez@armagnac:25> date
Wed Oct 12 10:44:16 MET 1986
rogomez@armagnac:26> ls -C
prueba archivo
rogomez@armagnac:27> who
rogomez console Oct 12 09:09
rogomez ttyp0 Oct 12 10:38
toto ttyp1 Oct 12 11:08
rogomez@armagnac:28>
se pudo haber tecleado como:
rogomez@armagnac:28> date ls -C who
Wed Oct 12 10:44:16 MET 1986
prueba archivo
rogomez console Oct 12 09:09
rogomez ttyp0 Oct 12 10:38
toto ttyp1 Oct 12 11:08
rogomez@armagnac:29>
3.5.5 Pipelines
En algunas ocasiones es importante que el resultado de la ejecucion de un comando sea la entrada
de otro. Una opcion para resolver lo anterior es utilizar redirecciones, la salida del comando enviarla
a un archivo y la entrada del otro comando redireccionarla con respecto a dicho archivo.
La salida estandar de un comando puede ser conectada a la entrada estandar de otro comando a
traves de lo que se conoce como pipelines. Un pipeline es un puente de comunicacion entre la salida
de un proceso y la entrada de otro. Es representado por una l nea vertical |. La sintaxis del pipeline
es:
comando ] ] | ] ] | comando ] ]
Un ejemplo de uso del pipeline es el siguiente:
rogomez@armagnac:28>cat numeros
uno un
dos deux
tres trois
cuatro quatre
cinco cinq
9
rogomez@armagnac:29>cat numeros | grep dos | more
dos deux
rogomez@armagnac:30>
En este caso la salida del comando cat es la entrada del comando grep y la salida de este es la
entrada del comando more el cual al nal lo imprime en pantalla.
En realidad una de las ventajas de los pipelines es el evitar la creacion de archivos temporales
para dejar resultados parciales en ellos. En efecto, a traves de redirecciones y con archivos temporales
es posible obtener el mismo resultado. Esto se le deja como ejercicio al lector.
4 Comandos relacionados con archivos
Una de las partes fundamentales del sistema operativo Unix son los archivos. Todo se hace a traves
de ellos. Los archivos se encuentran agrupados en como directorios. Estos directorias se encuentran
organizados en una jerarqu a de arbol, donde la ra z esta representada por el caracter  (ver gura
1 ).
raulm rogomez egarcia
/
exportdevbinhome
tareas personal
cv.ps reporte.txt
p1.c
p2.c
Figura 1: Los diferentes pasos para comunicar dos procesos a traves de un pipe
Los comandosque se describen en esta seccion permiten ver el contenido de los archivos, borrarlos,
moverlos, renombrarlos, listar el contenido de un directorio y cambiar de directorio.
4.1 El comando ls
Descripcion: despliega los nombres de los archivos que se encuentran dentro del directorio
actual
Sintaxis:
ls opciones]
Algunas opciones:
-a lista los archivos que comienzan con un "."
-l listado en formato largo
-d si el argumento es un directorio lista el nombre del archivo
directorio y no su contenido
-s da el tama~no de los archivos en kilo-bytes
-u despliega la ultima hora de acceso en lugar de la ultima hora de modi cacion
-t acomoda los archivos en funcion de la hora de la ultima modi cacion
10
-i imprime el numero de referencia (i-node) de los archivos
-C lista los archivos en columnas
-g muestra el propietario del grupo de un archivo en un formato largo
Ejemplo:
rogomez@armagnac:45>ls -l
total 4
d r w x r - x r - x 1 cachafas 512 Oct 12 10:13 Sundraw
d r w x r - x r - x 1 cachafas 512 Dec 11 20:13 Sunpaint
- r w x r - x r - x 1 cachafas 512 Sep 15 18:13 toto
- r w - r - x - - x 1 cachafas 512 Jan 12 01:14 curso.html
rogomez@armagnac:46>
4.2 El comando more
Descripcion: despliegan el contenido de un archivo parandose cada vez que termina la pantalla.
Sintaxis:
more nombre-archivo
Ejemplo:
rogomez@armagnac:201>more numeros.txt
uno un
dos deux
tres trois
cuatro quatre
cinco cinc
--More--(53%)
seis six
siete sept
ocho huit
nueve neuf
diez dix
rogomez@armagnac:202>
4.3 EL comando cat
Descripcion: es utilizado para ver el contenido de un archivo. Lo que hace es copiar uno o
varios archivos en la salida estandar (la pantalla por default). A diferencia del anterior este
no se detiene entre pantalla y pantalla.
Sintaxis:
cat nombre-archivo
Ejemplo:
rogomez@armagnac:207>cat numeros.txt
uno un
dos deux
tres trois
cuatro quatre
cinco cinc
seis six
siete sept
ocho huit
nueve neuf
11
diez dix
rogomez@armagnac:208>
4.4 El comando pwd, print working directory
Descripcion: despliega el camino de acceso del directorio actual (donde se encuentra dentro
del sistema de archivos). Este comando despliega el nombre de un directorio nunca el de un
archivo.
Sintaxis:
pwd
Ejemplo:
rogomez@armagnac:61>pwd
/home/dic/rogomez/Articulos
rogomez@armagnac:62>
4.5 El comando cd
Descripcion: permite cambiar de directorio. Una vez realizado el cambio despliega el directorio
a donde se cambio. Sin parametro alguno lo posiciona en el directorio donde inicio el usuario,
cuando se entro al sistema. Dando como parametro .. remonta en el directorio del padre.
Sintaxis:
cd nombre-directorio ]
Ejemplo:
rogomez@armagnac:210>cd Cursos/
/home/rogomez/Cursos
rogomez@armagnac:211>cd ..
/home/rogomez
rogomez@armagnac:212>
4.6 El comando rm (remove)
Descripcion: borra el nombre de un archivo o, si ese nombre fuera el ultimo (el numero de
ligas es 1), el archivo sera f sicamente" suprimido
Sintaxis:
rm archivo archivos ]
Opciones:
-r recursivamente (si directorio contiene otro, borra contenido de este
-f forza (no despliega errores, ni hace preguntas)
-i interactivo, (pregunta)
Ejemplo:
rogomez@armagnac:12>rm -i toto.txt
rm: remove toto.txt (yes/no)? y
rogomez@armagnac:13>rm prog.c
rogomez@armagnac:14>rm -i Tareas/
rogomez@armagnac:15>
12
4.7 El comando mkdir
Descripcion: utilizado en la creacion de directorios.
Sintaxis:
mkdir directorio directorio ]
Ejemplos:
rogomez@armagnac:525>mkdir /usr/usr2/alumno1
rogomez@armagnac:526>mkdir test direc1 rep2
rogomez@armagnac:527>mkdir arbo arbo/rep1
rogomez@armagnac:528>
4.8 El comando rmdir
Descripcion: borra directorios, sin embargo este comando no borrara el directorio si este no se
encuentra vac o
Sintaxis:
rmdir directorio directorio ]
Ejemplo:
rogomez@armagnac:453> rmdir Tareas
rogomez@armagnac:454> rmdir Proyectos
rogomez@armagnac:455>rmdir Temporal
rmdir: directory "Temporal": Directory not empty
rogomez@armagnac:456>rm Temporal/*
rogomez@armagnac:457>
4.9 El comando chmod
Descripcion: sirve para cambiar los permisos de escritura, lectura y ejecucion de una archivo
o directorio. Solo el creador del archivo o directorio puede cambiar dichos permisos.
13
Sintaxis:
chmod nuevo-modo archivos ] directorios ]
Opciones:
Existen dos formas de especi car el nuevo modo:
1. en octal: chmod ooo archivo
2. en modo simbolico: chmod ugoa ] = -] rwx ] + donde
u permisos del usuario
g permisos del grupo
o permisos de los otros
a todos los permisos
Ejemplo
rogomez@armagnac:231> ls -lg e1
- r w - r w - r w - 1 toto daemon 0 Oct 12 18:20 e1
rogomez@armagnac:232> chmod 755 e1
rogomez@armagnac:233> ls -lg e1
- r w x r - x r - x 1 toto daemon 0 Oct 12 18:20 e1
rogomez@armagnac:234> chmod a-x e1
rogomez@armagnac:235> ls -lg e1
- r w - r - - r - - 1 toto daemon 0 Oct 12 18:20 e1
rogomez@armagnac:236> chmod g+x e1
rogomez@armagnac:237> chmod o-r e1
rogomez@armagnac:238> ls -lg e1
- r w - r - x - - - 1 toto daemon 0 Oct 12 18:20 e1
rogomez@armagnac:239>
4.10 El comando cp
Descripcion: copia un archivo ordinario
Sintaxis:
cp archivo1 archivo2
cp archivo archivos ] directorio
Ejemplos:
rogomez@armagnac:239>cp arch1 arch2
rogomez@armagnac:240>cp arch1 direc
rogomez@armagnac:241>cp arch1 direc/arch2
rogomez@armagnac:242>cp arch1 arch2 arch3 direc
rogomez@armagnac:243>
Otros:
cp no modi ca los archivos originales, tan solo los duplica
la opcion -r es copia recursiva, si el archivo a copiar es un directorio copia el contenido
de este
4.11 El comando mv, move
Descripcion: desplaza un archivo o lo renombra
Sintaxis:
mv antiguo-nombre nuevo-nombre
mv archivo archivos ] directorio
14
Ejemplos:
rogomez@armagnac:244>mv arch-a arch-b
rogomez@armagnac:245>mv direc1 direc2
rogomez@armagnac:246>mv arch1 arch2 arch3 arch4 direc
rogomez@armagnac:247>mv arch1 ../bin/fx
rogomez@armagnac:248>
4.12 El comando ln, link
Descripcion: crea un nuevo nombre para un archivo, util para archivos sistemas, evitar copiar
dos archivos con el mismo nombre (ahorrar espacio). Solamente con la opcion -s se puede
cambiar el nombre a un directorio
Sintaxis:
ln archivo nuevo-nombre
ln -s archivo otro-nombre
Ejemplos:
rogomez@armagnac:248> ls -li /* listado largo con i-node */
total 2
14411 -rw-r--r-- 1 rgomez 412 Oct 10 16:56 arch1
14412 -rw-r--r-- 1 rgomez 167 Oct 10 16:57 archivo
rogomez@armagnac:249>ln arch1 fichier
rogomez@armagnac:250>$ ls -li
total 3
14411 -rw-r--r-- 2 rgomez 412 Oct 10 16:56 arch1
14411 -rw-r--r-- 2 rgomez 412 Oct 10 16:56 fichier
14412 -rw-r--r-- 1 rgomez 167 Oct 10 16:57 archivo
rogomez@armagnac:251>
Otros:
En BSD 4.x es posible crear ligas simbolicas entre archivos o directorios correspondientes a
sistemas de archivos diferentes. Por ejemplo:
rogomez@armagnac:252> ls
arch1 dir1
rogomez@armagnac:253> ln -s arch1 fichier
rogomez@armagnac:254> ls -li
total 3
14411 -rw-r--r-- 1 rgomez 412 Oct 10 16:56 arch1
14412 lrwxrwxrwx 1 rgomez 4 Oct 10 17:09 fichier -> arch1
38935 drwxr-xr-x 2 rgomez 512 Oct 10 17:09 dir1
rogomez@armagnac:255> ln -s dir1 repertoire
rogomez@armagnac:256> ls -li
total 4
14411 -rw-r--r-- 1 rgomez 412 Oct 10 16:56 arch1
14412 lrwxrwxrwx 1 rgomez 4 Oct 10 17:09 fichier -> arch1
38935 drwxr-xr-x 2 rgomez 512 Oct 10 17:09 dir1
14413 lrwxrwxrwx 2 rgomez 4 Oct 10 17:10 dir1 -> repertoire
rogomez@armagnac:257>
15
4.13 El comando grep
Descripcion: sirve para encontrar dentro de un conjunto de archivos, todas las l neas que
contienen una cadena de caracteres especi cada por una expresion regular
Sintaxis:
grep opciones ] expr-reg archivos ]
Opciones:
-v despliega las l neas que no contienen la expresion
-c imprime solo el numero de l neas que contienen la expresion
-i no hace diferencia entre mayusculas y minusculas
-n despliega el numero de l nea
Ejemplos:
rogomez@armagnac:15>cat agenda
aguirre claudia 5456789
burron regino 8719890
gomez roberto 3218956
gomez gabriel 3331811
zapata adolfo 4782911
rogomez@armagnac:16>grep gomez agenda
gomez roberto 3218956
gomez gabriel 3331811
rogomez@armagnac:17>cat numeros
uno un
dos deux
tres trois
cuatro quatre
cinco cinc
rogomez@armagnac:18>grep cinc numeros
cinco cinc
rogomez@armagnac:19>
Notas:
Dentro de la misma familia, se encuentran los comandos siguientes:
fgrep no admite las expresiones regulares
egrap admite expresiones regulares extendidas
4.14 El comando sort
Descripcion: permite ordenar las l neas de un archivo texto. Por default, sort ordena en
funcion de todos los caracteres de la l nea, en orden creciente de los valores de caracteres
ASCII.
Sintaxis:
sort opciones] llave de ordenamiento] archivos]
Opciones:
-u suprime las l neas conteniendo las llaves identicas
-n ordenamiento numerico
-b ignorar los blancos en principio de l nea
16
Ejemplos:
rogomez@armagnac:R20>cat numeros
uno un
dos deux
tres trois
cuatro quatre
cinco cinc
rogomez@armagnac:21>sort numeros
cinco cinc
cuatro quatre
dos deux
tres trois
uno un
rogomez@armagnac:22>
4.15 El comando wc
Descripcion: permite contar el numero de l neas, palabras y caracteres contenidos en los
archivos
Sintaxis:
wc opciones] archivos]
Opciones:
-l cuenta solo las l neas
-w cuenta solo las palabras
-c cuenta solo los caracteres
Ejemplos:
rogomez@armagnac:22>wc /etc/passwd
20 37 752 /etc/passwd
rogomez@armagnac:23>cat numeros
uno un
dos deux
tres trois
cuatro quatre
cinco cinc
rogomez@armagnac:24>wc numeros
5 10 81 numeros
rogomez@armagnac:25>wc -c /etc/passwd
752 /etc/passwd
rogomez@armagnac:26>
4.16 El comando tail
Descripcion: imprime la parte nal de un archivo en la salida estandar
Sintaxis:
tail -/n] opciones] archivo] +
Opciones:
-n imprime las ultimas n l neas, (default 10 ultimas)
+n imprime a partir de la enesima l nea (incluida)
-r imprime las l neas en orden inverso
17
Ejemplos:
rogomez@armagnac:26>tail /etc/passwd
nobody:x:60001:60001:Nobody:/:
noaccess:x:60002:60002:No Access User:/:
nobody4:x:65534:65534:SunOS 4.x Nobody:/:
msql:x:85:10:Mini SQL:/local/Hughes:/bin/csh
mant:x:86:10:Mantenimiento:/tmp:/sbin/sh
nsuser:x:101:101:Http User:/local/ns:/bin/sh
root-mdg:x:0:0:Damian Guerra:/tmp:/bin/csh
root-gg:x:0:0:Guillermo Gutierres:/tmp:/bin/csh
root-im:x:0:0:Ixchell Morales:/tmp:/bin/csh
root-er:x:0:0:Edgar Romero:/tmp:/bin/csh
rogomez@armagnac:27>tail +3 numeros
tres trois
cuatro quatre
cinco cinc
rogomez@armagnac:28>cat /etc/passwd | tail -4
root-mdg:x:0:0:Damian Guerra:/tmp:/bin/csh
root-gg:x:0:0:Guillermo Gutierres:/tmp:/bin/csh
root-im:x:0:0:Ixchell Morales:/tmp:/bin/csh
root-er:x:0:0:Edgar Romero:/tmp:/bin/csh
rogomez@armagnac:29>
4.17 El comando head
Descripcion: imprime el principio de un archivo en la salida estandar
Sintaxis:
head -n] archivo]
Opciones:
-n imprime las n primeras l neas (default 10 primeras)
Ejemplos:
rogomez@armagnac:35>head -2 numeros
uno un
dos deux
rogomez@armagnac:36>head /etc/passwd
root:x:0:1:Super-User:/:/sbin/sh
daemon:x:1:1::/:
bin:x:2:2::/usr/bin:
sys:x:3:3::/:
adm:x:4:4:Admin:/var/adm:
lp:x:71:8:Line Printer Admin:/usr/spool/lp:
smtp:x:0:0:Mail Daemon User:/:
uucp:x:5:5:uucp Admin:/usr/lib/uucp:
nuucp:x:9:9:uucp Admin:/var/spool/uucppublic:/usr/lib/uucp/uucico
listen:x:37:4:Network Admin:/usr/net/nls:
rogomez@armagnac:37>
18
5 Comandos relacionados con impresiones
Una de las actividades mas comunes que realiza un usuario es la impresion de documentos. Es
posible enviar a imprimir un documento directamente de la aplicacion o utilizando algunos de los
comandos que Unix proporciona para ello. Los siguientes comandos sirven para el control de las
impresiones.
5.1 El comando lpr (line printer)
Descripcion: el principal comando de impresion. Crea un trabajo de impresora en un area de
spooling para una impresion subsecuente (un trabajo de impresion se divide en un archivo de
control y otro de datos)
Sintaxis:
lpr opciones ] archivos ]
Opciones:
-P dest para elegir la impresora
-# n para obtener n copias
Ejemplo:
rogomez@armagnac:43> lpr abc
rogomez@armaganc:44> lpr -Pbali prog1.c results.txt
rogomez@armagnac:45>
5.2 El comando a2ps
Descripcion: imprime un archivo ASCII en formato postcript
Sintaxis:
a2ps opciones ] archivos ]
Opciones:
-P dest + para elegir impresora
-#n para obtener n ejemplares
-1 imprime una pagina por hoja
-l imprime en modo landscape
-p imprime en modo portrait
-n despliega el numero de l neas
Ejemplo:
rogomez@armagnac:809>a2ps numeros
numeros (plain): 1 page on 1 sheet]
request id is CC-723 (1 file)
Total: 1 page on 1 sheet] sent to the default printer
rogomez@armagnac:810>
5.3 El comando lpq
Descripcion: permite ver el estado de las colas de espera de impresion
Sintaxis:
lpq opcion ] usuario ]
19
Opciones:
-P dest para escoger la impresora
-l formato largo
Ejemplo:
rogomez@armagnac:810> lpq
lp is ready and printing
Rank Owner Job File Total Size
active root 201 /etc/passwd 350 bytes
1st toto 202 abc 546 bytes
rogomez@armagnac:811>
5.4 El comando lprm (line printer remove)
Descripcion: permite suprimir los archivos en espera de ser impresos.
Sintaxis:
lprm opciones ] #job] usuarios]
Opciones:
-P dest para escoger la cola de espera
- suprime todos los archivos del usuario
job# borra el archivo que corresponde a ese numero
Ejemplo:
rogomez@armagnac:810> lprm 202
dfA202sioux dequeued
cfA202sioux dequeued
rogomez@armagnac:811>
6 Otros comandos
Los comandos descritos en esta seccion no pudieron ser agrupados o pertenecen a un grupo muy
reducido. El lector encontrara comandos para manejo de terminales procesos, del manual y otros.
6.1 El comando passwd password
Descripcion: el comando passwd permite modi car el password de un usuario, para esto el
usuario debera de conocer el password de la cuenta que desee modi car.
Sintaxis:
passwd -l | -y ] -afs] -d usename] ]
-e username] - F filename]
-n numdays username] -x numdays username]
username ]
Ejemplo:
rogomez@armagnac:121>passwd
Changing password
Old password: <antiguo password>
New password: <nuevo password>
Re-enter new password: <nuevo password>
rogomez@armagnac:122>
20
6.2 El comando man, (manual de Unix)
Descripcion: permite conocer todo lo referente a un comando, llamada de sistema o dispositivo
relacionado con Unix
Sintaxis:
man opcion ] seccion ] titulo(s)
Opciones:
-k busca todas las secciones del manual que contengan informacion concerniente al co-
mando.
-s busca en una seccion en espec co informacion sobre el comando.
Ejemplo:
rogomez@armagnac:122>man man
Reformatting page. Wait... done
User Commands man(1)
NAME
man - find and display reference manual pages
SYNOPSIS
man - ] -adFlrt ] -M path ] -T macro-package ]
-s section ] name ...
man -M path ] -k keyword ...
man -M path ] -f file ...
DESCRIPTION
The man command displays information from the reference
manuals. It displays complete manual pages that you select
by name, or one-line summaries selected either by keyword
:
:
Nota:
Si no se especi ca ninguna seccion, la pagina a imprimir es buscada en todas las secciones
6.3 El comando echo
Descripcion: imprime sus argumentos sobre la salida estandar (la pantalla por default)
Sintaxis:
echo argumentos ]
Ejemplo:
rogomez@armagnac:284>echo esto es una prueba
esto es una prueba
rogomez@armagnac:285>
6.4 El comando which
Descripcion: localiza un comando desplegando su pathname o alias. Toma una lista de nombres
y busca por los archivos que ser an ejecutados al escribir estos nombres como comandos. Cada
argumento es expandido y buscado dentro del path del usuario. Tanto los alias como los paths
son tomados del archivo .cshrc.
21
Sintaxis:
which nombre_archivo ]
Ejemplo:
rogomez@armagnac:231>which xeyes
/home/dic/rogomez/xeyes
rogomez@armagnac:232>which opnet
opnet: Command not found
rogomez@armagnac:233>
6.5 El comando ps
Descripcion: proporciona una lista de todos los procesos del sistema. Cada vez que se esta
ejecutando un comando o un programa se le asocia un numero de proceso. El comando ps
permite ver los numeros asociados a los procesos
Sintaxis:
ps - ] acCegjklnrSuUvwx ] | num ]
kernel name] c-dump-file ] swap-file ]
Algunas opciones:
-a informacion de procesos pose dos" por otros
-l informacion en formato largo
-r restringe la salida a los procesos que estan corriendo"
-x incluye procesos no relacionados con la terminal en la que se tecleo el comando
Ejemplo:
rogomez@armagnac:233>ps -agx
PID TT STAT TIME COMMAND
0 ? D 0:07 swapper
1 ? IW 0:00 /sbin/init
2 ? D 0:02 pagedaemon
51 ? S 0:05 portmap
1786 co S 0:05 xclock -digital -geometry +675 +-2
2242 p0 S 0:02 xvile ejecuta.c
2331 p0 R 0:00 ps -agx
2139 p4 IW 0:00 telnet sunlab
rogomez@armagnac:234>
Nota:
El comando kill numero-proceso permite "matar", o terminar, con la ejecucion de un proceso
6.6 El comando uname
Descripcion: sirve para la identi cacion del sistema. Despliega informacion acerca del sistema
sobre el cual se esta trabajando. Si no se especi ca ninguna opcion, imprime el nombre del
sistema
Sintaxis:
uname -mnrsva]
Opciones:
-m imprime el nombre de la maquina
-n imprime el nombre del nodo, el cual es utilizado para comunicaciones a traves de
una red
22
-r imprime la referencia de liberacion, (release) del sistema operativo
-s imprime el nombre del sistema
-v imprime la version del sistema operativo
-a imprime toda la informacion anterior
Ejemplo:
rogomez@armagnac:233>uname -a
SunOS mexico 4.1.3_U1 2 sun4c
rogomez@armagnac:234>
6.7 El comando tty
Descripcion: permite la identi cacion de la terminal. Regresa el nombre de la terminal del
usuario.
Sintaxis:
tty -l ] -s] ...
Opciones:
-l imprime numero l nea asincronico a la cual la terminal del usuario esta conectado
-s imprime todos los parametros en hexadecimal
Ejemplo
rogomez@armagnac:38>tty
/dev/pts/6
rogomez@armagnac:39>
Notas:
Nombre usuado es el equivalente al regresado por la funcion ttyname()
6.8 El comando date
Descripcion: despliega la fecha y la hora
Sintaxis:
date -u] format] +
Opciones:
-u despliega en modo GMT (Greenwich Mean Time) saltandose el formato local.
+format la impresion del comando puede ser reformateada para que se entienda mejor.
Ejemplo:
rogomez@armagnac:39> date
Fri Mar 12 19:59:08 CST 1999
rogomez@armagnac:40> date '+DATE: %d-%n-10%y%nHEURE: %H:%M:%S'
DATE: 10-10-1988
HEURE: 16:01:47
rogomez@armagnac:41>
6.9 El comando who
Descripcion: despliega los usuarios conectados.
Sintaxis:
who
23
Ejemplo:
rogomez@armagnac:41>who
rogomez console Oct 10 09:48
rogomez ttyp0 Oct 10 11:18
mimoso ttyp1 Oct 10 12:54
rogomez@armagnac:42>
Nota:
Una variante es whoami que despliega informacion correspondiente a la persona conectada a
la terminal donde se tecleo ese comando.
7 Los programas en red
Con las versiones BSD4.x de Unix el acceso a una red local es posible. El objetivo es que el usuario
pueda acceder una maquina a partir de otra, con el n de transferir datos a una gran velocidad.
Las principales aplicaciones son:
Transferir archivos
Tener una terminal virtual
Ejecucion, sobre una maquina, de programas a distancia
A continuacion se describen los principales protocolos/comandos usados en maquinas Unix co-
nectadas por una red local.
7.1 El protocolo telnet
Permite conectarse a otro sistema (no necesariamente Unix ) y dialogar con ese sistema como si
tuvieramos una terminal conectada directamente a el.
La sintaxis del protoccolo es:
telnet host ]
Una vez conectados, y despues de presionar las teclas <crtl> <]> , se pasa al modo comandos
de telnet. Este modo permite enviar caracteres especiales al sistema distante, de cerrar la conexion,
de abrir una nueva, o de salirse de telnet
Los principales comandos bajo este modo son:
? lista los comandos de telnet
open abre una conexion
close cierra la conexion en curso
quit sale de telnet, cerrando la conexion
send car env a un caracter especial al sitio distante
send ? lista los cracteres especiales y su efecto
7.2 El protocolo ftp ( le transfer protocol)
Permite conectarse a otro sistema distante, con el n de transferir archivos. Es posible hacerlo en
ambos sentidos, ya sea dejar archivos en la maquina remota o traerse archivos de la maquina remota.
Permite conectarse a computadoras que manejan un sistema diferente a Unix.
ftp host ]
Los principales comandos de ftp son:
24
? lista los comandos de ftp
! lanza un shell sobre el sistema local
bye termina la sesion ftp
cd direc cambiar directorio en sistema distante
lcd direc cambiar de directorio en sistema local
put arch env a el archivo arch1, que se llamara arch2 en el sistema distante. Un sinonimo
de put es send
get arch1 recibe el archivo arch1, que se llamara arch2 en el sistema local. Un sinonimo
de get es recv
mget utilizado para recibir archivos utlizando el metacaracter *
mput permite enviar y recibir archivos utilizando el metacaracter *. Los archivos
conservaran su mismo nombre en ambos sistemas
prompt elimina la opcion de pregunta interactiva de mget y mput
7.3 Los comandos r
Este es un conjunto de comandos que permiten realizar cierto tipo de operaciones remotas entre
dos maquinas que esten ejecutando un sistema operativo Unix. Con el n de protegerse de posibles
ejecuciones no deseadas, si el usuario toto de la maquina A desea ejecutar un comando en la maquina
B se deben cumplir las siguientes condiciones:
El usuario toto debe de tener una cuenta en la maquina B. Normalmente se tiene el mismo
nombre de cuenta en ambas maquinas (toto)
El archivo /etc/host.equiv de la maquina B debe tener una entrada para A o en su defecto el
directorio hogar3 de toto debe contener un archivo llamada .rhosts que contenga una entrada
para tequila.
En muchos sistemas el archivo .rhosts es creado con una sola entrada, un caracter + lo cual
le otorga permiso a todo mundo de hacer lo que sea en la maquina. Se recomienda eliminar dicho
archivo o revisar periodicamente su contenido para evitar otorgarle permisos innecesarios a personas
desconocidas o no deseadas.
Existen varios comandos que funcionan bajo este contexto, a continuacion se explicaran los mas
importantes de ellos.
7.3.1 EL rlogin (remote login)
Permite conectarse a otro sistema Unix, de la misma forma que telnet . Su sintaxis es:
rlogin -l nombre ] host
Si no se utiliza la opcion -l, rlogin conectara al usuario a la maquina distante con el mismo
nombre que tiene en la maquina local. Los valores de las variables de ambiente USER y TERM son
pasadas al programa login de la computadora distante.
Las peticiones de rlogin pueden estar precedidas del caracter ~ (tilde) y solo son efectivas si
son el primer caracter de una l nea, (despues de un <RETURN>):
3directorio en el cual el usuario es posicionado cuando entra por primera vez al sistema (conocido tambien como
directorio HOME).
25
~. cierra la conexion
~<crl><z> suspende la conexion
~~ env a un ~
Este comando, como todos el resto de los comandos-r no funciona si alguna de las dos maquinas
no trabaja bajo el sistema Unix.
7.3.2 El rsh (remote shell)
Permite ejecutar un comando sobre otra maquina Unix. Los archivos de entrada/salida estandar
estan asociados a la terminal, sin embargo no se aconseja utilizar rsh para ejecutar comandos inte-
ractivos distantes.
Su sintaxis es:
rsh host -l usuario ] comando ]
Si no se especi ca el comando, entonces el usuario se conectara al sistema distante como si hubiera
tecleado un rlogin.
Hay que tener cuidado con las redirecciones:
rgomez@cognac>rsh amenti ls > res.txt crea un archivo res.txt local
rgomez@cognac>rsh amenti "ls > res.txt" crea un archvio en la maquina amenti
Si el usuario no tiene el archivo .rhosts entonces se le pedira su password. Lo mismo ocurre si en
ese archivo no se le otorga la autorizacion de conexion a la maquina desde la cual se esta ejecutando
el rsh.
7.3.3 El rcp (remote copy)
Permite copiar archivos de una maquina a otra. Es imperativamente necesario tener un archivo
.rhosts en la maquina distante que autorize al usuario a conectarse
La sintaxis del copiado remoto es:
rcp arch1 arch2
rcp -r ] archivo archivos ] directorio
donde arch1 y arch2 pueden tomar la forma maquina:pathname. Esta forma signi ca que el archivo
se encuentra en el camino de accesopathname, de la maquina. Lo mismo se aplica paralos argumentos
directorio y archivo en la segunda sintaxis. La opcion -r permite especi car un directorio y de
copiar recursivamente toda la sub-jerarqu a que se encuentra en ese directorio.
Algunos ejemplos de este comando se presentan a continuacion:
rogomez@svarga>rcp amenti: .login
rogomez@svarga>rcp eden:bin/arch1 svarga:bin
rogomez@svarga>rcp eden:bin/arch1 walhalla:bin/arch2
rogomez@svarga>rcp -r src empyree:src
26
8 Resumen comandos Unix
La tabla de abajo presenta un resumen de los principales coandos Unix
awk busca y procesa patrones en un archivo
cat concatena o despliega archivos
comm compara archivos buscados
cp copia archivos
cpio almacena y extrae archivos en un formato archival
diff despliega las diferencias entre dos archivos
find encuentra archivos
grep busca patrones de caracteres en archivos
head despliega el encabezado de un archivo
ln crea una liga a un archivo
lpr imprime archivos
ls despliega informacion sobre archivos
mkdir crea un directorio
more despliega un archivo por pantalla
mv renombra un archivo
od vac a un archivo
pr hace paginacion a un archivo
rcp copia archivos desde o en una computadora remota
rm remueve un archivo
rmdir remueve un directorio
sed editor stream
sort busca y fusiona archivos
spell checa errores ortogra cos en un archivo
tail despliega la ultima parte de un archivo
tar almacena o extrae archivos de un archivo archival
uniq despliega l neas de un archivo que son unicas
wc despliega numero de l neas, palabras y caracteres
ftp trans ere archivos a traves de la red
mail manda o recibe correo electronico
mesg activa/desactiva la recepcion de mensajes
telnet se conecta a una computadora remota a traves de la red
write manda un mensaje a otro usuario
cd cambia a otro directorio de trabajo
chgrp cambia el grupo que esta asociado con un archivo
chmod cambia el modo de acceso de un archivo
chown cambia el propietario de una clase
date despliega la fecha y la hora
df despliega la cantidad disponible del disco duro
du despliega informacion del uso del disco
file despliega clasi cacion de archivos
finger despliega informacion detallada de usuarios
kill termina un proceso
nice cambia la prioridad de un comando
nohup corre un comando que se mantendra corriendo despues de salir del programa
ps despliega status de procesos
ruptime despliega el status de computadoras conectadas a la red
rwho despliega nombres de usuarios de computadoras conectadas a la red
27
sleep proceso que duerme por un intervalo espec co
stty despliega o determina parametros terminales
umask determina una mascara de permisos para la creacionn de archivos
w despliega informacion de los usuarios del sistema
who despliega nombres de usuarios
cc compilador de C
make guarda la concurrencia de los programas
touch actualiza el tiempo de modi cacion de archivos
admin crea o cambia las caracter sticas de un archivo SCCS
ci crea o guarda cambios en un archivo RCS
co extrae una version sin codi car de un archivo RCS
delta guarda cambios en un archivo SCCS
get crea una version sin codi car de un archivo SCCS
prs imprime la historia de un archivo SCCS
rcs crea o cambia las caracter sticas de un archivo RCS
rlog imprime un sumario de la historia de un archivo RCS
rmdel remueve un delta de un archivo SCCS
at ejecuta un shell script a un determinado tiempo
cal despliega un calendario
calendar presenta recordatorios
crontab programa un comando para que se corra a determinada hora
echo despliega un mensaje
expr evalua una expresion
fsck checa y repara lesystems
rlogin entra a una computadora remota
tee copia la entrada estandar a la salida estandar y a uno o mas archivos
tr reemplaza caracteres espec cos
tty despliega el camino a la terminal
28

Más contenido relacionado

La actualidad más candente

Línea del tiempo de los sistemas operativos
Línea del tiempo de los sistemas operativosLínea del tiempo de los sistemas operativos
Línea del tiempo de los sistemas operativoscristophermoises
 
linea del tiempo de los sistemas operativos... especialidad
linea del tiempo de los sistemas operativos... especialidadlinea del tiempo de los sistemas operativos... especialidad
linea del tiempo de los sistemas operativos... especialidadAnani Estupiñán
 
Linea del tiempo de sistemas operativos
Linea del tiempo de sistemas operativosLinea del tiempo de sistemas operativos
Linea del tiempo de sistemas operativosKaren Marin Adan
 
Tp 4 chavez gonzalo
Tp 4 chavez gonzaloTp 4 chavez gonzalo
Tp 4 chavez gonzaloGonza201420
 
Línea del tiempo de los sistemas operativos
Línea del tiempo de los sistemas operativosLínea del tiempo de los sistemas operativos
Línea del tiempo de los sistemas operativosAndreaG97
 
Linea del tiempo de los sistemas operativos
Linea del tiempo de los sistemas operativosLinea del tiempo de los sistemas operativos
Linea del tiempo de los sistemas operativosAleMuPa
 
Cronología de los sistemas operativos
Cronología de los sistemas operativosCronología de los sistemas operativos
Cronología de los sistemas operativosAxel Santana Jordan
 
Sistmas operativos
Sistmas operativosSistmas operativos
Sistmas operativostonometal
 
Historia y evolucion de los sistemas operativos
Historia y evolucion de los sistemas operativosHistoria y evolucion de los sistemas operativos
Historia y evolucion de los sistemas operativosalexitopico
 
Sistema operativo años 60
Sistema operativo años 60Sistema operativo años 60
Sistema operativo años 60Ruru Hitachiin
 
Historia de los sistemas operativos.
Historia de los sistemas operativos.Historia de los sistemas operativos.
Historia de los sistemas operativos.MariaAunonMondejar
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosenma
 
Linea del tiempo de los sistemas operativos
Linea del tiempo de los sistemas operativosLinea del tiempo de los sistemas operativos
Linea del tiempo de los sistemas operativosfernando fuel
 
Linea del tiempo - Sistemas Operativos
Linea del tiempo - Sistemas OperativosLinea del tiempo - Sistemas Operativos
Linea del tiempo - Sistemas OperativosLessly García Macedo
 
Línea del tiempo de s.o.
Línea del tiempo de s.o.Línea del tiempo de s.o.
Línea del tiempo de s.o.dkinfor
 

La actualidad más candente (20)

Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Línea del tiempo de los sistemas operativos
Línea del tiempo de los sistemas operativosLínea del tiempo de los sistemas operativos
Línea del tiempo de los sistemas operativos
 
linea del tiempo de los sistemas operativos... especialidad
linea del tiempo de los sistemas operativos... especialidadlinea del tiempo de los sistemas operativos... especialidad
linea del tiempo de los sistemas operativos... especialidad
 
Linea del tiempo de sistemas operativos
Linea del tiempo de sistemas operativosLinea del tiempo de sistemas operativos
Linea del tiempo de sistemas operativos
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
 
Linea de tiempo s.o
Linea de tiempo s.oLinea de tiempo s.o
Linea de tiempo s.o
 
Tp 4 chavez gonzalo
Tp 4 chavez gonzaloTp 4 chavez gonzalo
Tp 4 chavez gonzalo
 
Inicios de los sistemas operativos
Inicios de los sistemas operativosInicios de los sistemas operativos
Inicios de los sistemas operativos
 
sistemas operativos
sistemas operativossistemas operativos
sistemas operativos
 
Línea del tiempo de los sistemas operativos
Línea del tiempo de los sistemas operativosLínea del tiempo de los sistemas operativos
Línea del tiempo de los sistemas operativos
 
Linea del tiempo de los sistemas operativos
Linea del tiempo de los sistemas operativosLinea del tiempo de los sistemas operativos
Linea del tiempo de los sistemas operativos
 
Cronología de los sistemas operativos
Cronología de los sistemas operativosCronología de los sistemas operativos
Cronología de los sistemas operativos
 
Sistmas operativos
Sistmas operativosSistmas operativos
Sistmas operativos
 
Historia y evolucion de los sistemas operativos
Historia y evolucion de los sistemas operativosHistoria y evolucion de los sistemas operativos
Historia y evolucion de los sistemas operativos
 
Sistema operativo años 60
Sistema operativo años 60Sistema operativo años 60
Sistema operativo años 60
 
Historia de los sistemas operativos.
Historia de los sistemas operativos.Historia de los sistemas operativos.
Historia de los sistemas operativos.
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Linea del tiempo de los sistemas operativos
Linea del tiempo de los sistemas operativosLinea del tiempo de los sistemas operativos
Linea del tiempo de los sistemas operativos
 
Linea del tiempo - Sistemas Operativos
Linea del tiempo - Sistemas OperativosLinea del tiempo - Sistemas Operativos
Linea del tiempo - Sistemas Operativos
 
Línea del tiempo de s.o.
Línea del tiempo de s.o.Línea del tiempo de s.o.
Línea del tiempo de s.o.
 

Destacado

050516 La Prensa Libre
050516 La Prensa Libre050516 La Prensa Libre
050516 La Prensa LibreJose Lopez
 
Todoencaja - Presentacion Betabeers Galicia
Todoencaja - Presentacion Betabeers GaliciaTodoencaja - Presentacion Betabeers Galicia
Todoencaja - Presentacion Betabeers GaliciaWeKCo Coworking
 
Actas 8ª reunion mesa del convenio (consolidación de empleo)
Actas 8ª reunion mesa del convenio (consolidación de empleo)Actas 8ª reunion mesa del convenio (consolidación de empleo)
Actas 8ª reunion mesa del convenio (consolidación de empleo)Cgt Sevilla
 
Antologia oral poesia hispanoamericana del siglo xx
Antologia oral poesia hispanoamericana del siglo xxAntologia oral poesia hispanoamericana del siglo xx
Antologia oral poesia hispanoamericana del siglo xxClaribel Pereira
 
COASTAL ESSENCE MAGAZINE
COASTAL ESSENCE MAGAZINECOASTAL ESSENCE MAGAZINE
COASTAL ESSENCE MAGAZINEjohnwillie1956
 
CIKM Cup 2016: Cross-Device Linking
CIKM Cup 2016: Cross-Device LinkingCIKM Cup 2016: Cross-Device Linking
CIKM Cup 2016: Cross-Device LinkingAlexey Grigorev
 
Estudio Economía Colaborativa en Valencia OuiShare marzo 2015
Estudio Economía Colaborativa en Valencia OuiShare marzo 2015Estudio Economía Colaborativa en Valencia OuiShare marzo 2015
Estudio Economía Colaborativa en Valencia OuiShare marzo 2015OuiShare
 
2017 dossier eventos empresas Los Angeles de San Rafael
2017 dossier eventos empresas Los Angeles de San Rafael2017 dossier eventos empresas Los Angeles de San Rafael
2017 dossier eventos empresas Los Angeles de San RafaelLos Angeles de San Rafael
 
DIAPOSITIVA CONCLUSIONES
DIAPOSITIVA CONCLUSIONESDIAPOSITIVA CONCLUSIONES
DIAPOSITIVA CONCLUSIONESalimancheno
 
Adicción a las tecnologías
Adicción a las tecnologíasAdicción a las tecnologías
Adicción a las tecnologíasJuan Luis Hueso
 
As cidades e o mundo urbano (2º ESO)
As cidades e o mundo urbano (2º ESO)As cidades e o mundo urbano (2º ESO)
As cidades e o mundo urbano (2º ESO)rubempaul
 

Destacado (16)

050516 La Prensa Libre
050516 La Prensa Libre050516 La Prensa Libre
050516 La Prensa Libre
 
Todoencaja - Presentacion Betabeers Galicia
Todoencaja - Presentacion Betabeers GaliciaTodoencaja - Presentacion Betabeers Galicia
Todoencaja - Presentacion Betabeers Galicia
 
Actas 8ª reunion mesa del convenio (consolidación de empleo)
Actas 8ª reunion mesa del convenio (consolidación de empleo)Actas 8ª reunion mesa del convenio (consolidación de empleo)
Actas 8ª reunion mesa del convenio (consolidación de empleo)
 
Sant fruitós
Sant fruitósSant fruitós
Sant fruitós
 
Trabajo cabañeros
Trabajo cabañerosTrabajo cabañeros
Trabajo cabañeros
 
Antologia oral poesia hispanoamericana del siglo xx
Antologia oral poesia hispanoamericana del siglo xxAntologia oral poesia hispanoamericana del siglo xx
Antologia oral poesia hispanoamericana del siglo xx
 
COASTAL ESSENCE MAGAZINE
COASTAL ESSENCE MAGAZINECOASTAL ESSENCE MAGAZINE
COASTAL ESSENCE MAGAZINE
 
CIKM Cup 2016: Cross-Device Linking
CIKM Cup 2016: Cross-Device LinkingCIKM Cup 2016: Cross-Device Linking
CIKM Cup 2016: Cross-Device Linking
 
Estudio Economía Colaborativa en Valencia OuiShare marzo 2015
Estudio Economía Colaborativa en Valencia OuiShare marzo 2015Estudio Economía Colaborativa en Valencia OuiShare marzo 2015
Estudio Economía Colaborativa en Valencia OuiShare marzo 2015
 
2017 dossier eventos empresas Los Angeles de San Rafael
2017 dossier eventos empresas Los Angeles de San Rafael2017 dossier eventos empresas Los Angeles de San Rafael
2017 dossier eventos empresas Los Angeles de San Rafael
 
SMART CARDS
SMART CARDSSMART CARDS
SMART CARDS
 
DIAPOSITIVA CONCLUSIONES
DIAPOSITIVA CONCLUSIONESDIAPOSITIVA CONCLUSIONES
DIAPOSITIVA CONCLUSIONES
 
Adicción a las tecnologías
Adicción a las tecnologíasAdicción a las tecnologías
Adicción a las tecnologías
 
As cidades e o mundo urbano (2º ESO)
As cidades e o mundo urbano (2º ESO)As cidades e o mundo urbano (2º ESO)
As cidades e o mundo urbano (2º ESO)
 
Barbudo duarte (conocimientos marineros)
Barbudo duarte (conocimientos marineros)Barbudo duarte (conocimientos marineros)
Barbudo duarte (conocimientos marineros)
 
Curriculum actualizado nuevo 1 1
Curriculum actualizado nuevo 1 1Curriculum actualizado nuevo 1 1
Curriculum actualizado nuevo 1 1
 

Similar a Comandos basicosunix

Historia de unix
Historia de unixHistoria de unix
Historia de unixmarcita3
 
Historia de linux
Historia de linuxHistoria de linux
Historia de linuxgschuldt23
 
Historia De Los So
Historia De Los SoHistoria De Los So
Historia De Los Soalucardcoper
 
Sistemas operativos maritza vargas
Sistemas operativos maritza vargasSistemas operativos maritza vargas
Sistemas operativos maritza vargasositapreciosa
 
Presentac..
Presentac..Presentac..
Presentac..jjsc18
 
SISTEMAS OPERATIVOS (UNIX & LINUX)
SISTEMAS OPERATIVOS (UNIX & LINUX)SISTEMAS OPERATIVOS (UNIX & LINUX)
SISTEMAS OPERATIVOS (UNIX & LINUX)Byron Malan
 
Sistemas operativos.pptx
Sistemas operativos.pptxSistemas operativos.pptx
Sistemas operativos.pptxRaulRMenaTzel
 
Curso basico de linux(guadalinex)
Curso basico de linux(guadalinex)Curso basico de linux(guadalinex)
Curso basico de linux(guadalinex)Gilberto Iraheta
 
Giannoni sistemas operativos
Giannoni sistemas operativosGiannoni sistemas operativos
Giannoni sistemas operativosOrianaGiannoni
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativosreynado2
 
Unix
UnixUnix
UnixJE OB
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosCarlosgl99
 
La historia de los sistemas operativos
La historia de los sistemas operativosLa historia de los sistemas operativos
La historia de los sistemas operativosjjajuas
 

Similar a Comandos basicosunix (20)

Historia de unix
Historia de unixHistoria de unix
Historia de unix
 
Historia de linux
Historia de linuxHistoria de linux
Historia de linux
 
Historia De Los So
Historia De Los SoHistoria De Los So
Historia De Los So
 
Sistemas operativos maritza vargas
Sistemas operativos maritza vargasSistemas operativos maritza vargas
Sistemas operativos maritza vargas
 
Presentac..
Presentac..Presentac..
Presentac..
 
SISTEMAS OPERATIVOS (UNIX & LINUX)
SISTEMAS OPERATIVOS (UNIX & LINUX)SISTEMAS OPERATIVOS (UNIX & LINUX)
SISTEMAS OPERATIVOS (UNIX & LINUX)
 
Sistemas operativos.pptx
Sistemas operativos.pptxSistemas operativos.pptx
Sistemas operativos.pptx
 
Curso basico de linux(guadalinex)
Curso basico de linux(guadalinex)Curso basico de linux(guadalinex)
Curso basico de linux(guadalinex)
 
Unix nueva diapositiva
Unix nueva diapositivaUnix nueva diapositiva
Unix nueva diapositiva
 
Giannoni sistemas operativos
Giannoni sistemas operativosGiannoni sistemas operativos
Giannoni sistemas operativos
 
Unix
UnixUnix
Unix
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Unix
UnixUnix
Unix
 
Unix y Linux
Unix y LinuxUnix y Linux
Unix y Linux
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
sistemaoperativos
sistemaoperativossistemaoperativos
sistemaoperativos
 
Historia de unix
Historia de unixHistoria de unix
Historia de unix
 
Historia de unix
Historia de unixHistoria de unix
Historia de unix
 
Sistemas operativos vanegas santiago
Sistemas operativos vanegas santiago Sistemas operativos vanegas santiago
Sistemas operativos vanegas santiago
 
La historia de los sistemas operativos
La historia de los sistemas operativosLa historia de los sistemas operativos
La historia de los sistemas operativos
 

Último

LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...JAVIER SOLIS NOYOLA
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfsamyarrocha1
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdfTarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdfCarol Andrea Eraso Guerrero
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
Procesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxProcesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxMapyMerma1
 

Último (20)

Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
 
Fundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdfFundamentos y Principios de Psicopedagogía..pdf
Fundamentos y Principios de Psicopedagogía..pdf
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
La Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdfLa Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdf
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdfTarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdf
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
Procesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxProcesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptx
 

Comandos basicosunix

  • 1. Comandos basicos de Unix Dr. Roberto Gomez Cardenas ITESM-CEM Dpto. Ciencias Computacionales 16 de agosto de 2000 Resumen: La siguiente es una lista que describe la sintaxis y funcionamiento de los principales comandos del sistema operativo Unix. La mayor parte de la informacion presentada en este documento fue obtenida a partir del comando man de Unix. El documento solo describe parte de lo desplegado por dicho comando. Si el lector desea informacion mas profunda se recomienda utilizar dicho comando. 1 Historia de Unix Este sistema operativo fue dise~nado originalmente a nales de los a~nos sesenta y principio de los a~nos setenta por un grupo de investigadores que trabajaba en AT&T. Su sencillez y elegancia llamaron la atencion de investigadores de las universidades y la industria. Unix ha alcanzado una posicion de extraordinaria importancia, siendo el unico sistema operativo que las compa~n as estan dispuestas a aceptar como estandar preferido de sistema operativo abierto. Unix es el unico sistema operativo que se ha instalado en todo tipo de computadoras, desde las microcomputadoras hasta las super- computadoras, y es el unico sistema operativo que implantan casi todos los fabricantes importantes de computadoras. El sistema operativo Unix encuentra sus origenes en el sistema operativo MULTICS. Unix es el ni~no prodigio de Ken Thompson y Dennis Ritchie, dos investigadores de los laborato- rios Bell. Al mismo tiempo, Ken Thompson trabajo en un programa de simulacion del movimiento de los planetas en el sistema solar llamado Space Travel. El programa estaba bajo un sistema operativo llamado Multics, uno de los primeros sistemas operativos que proporcionaba un entorno multiusua- rio, y se ejecutaba en una computadora General Electric de la serie 6000. Pero Multics era grande, lento y requer a recursos esenciales de la computadora. Thompson encontro una computadora mas peque~na adonde trans rio el programa Space Travel para ejecutarlo en el. La computadora era una maquina poco utilizada, la PDP-7, construida por Digital Equipment Corporation (DEC). En dicha computadora Thompson creo un sistema operativo que llamo Unix, y a ese sistema operatio adapto algunos de los conceptos avanzadaos de Multics. Exist an ya otros sistemas operativos distintos de Multics que ten an mas o menos las mismas capacidades y Unix se aprovecho del trabajo que se hab a realizado en aquellos sistemas operativos, al combinar algunos de los aspectos mas deseables de cada uno de ellos. Unix se trans rio en 1970 a una computadora PDP-11/20 y posteriormente al PDP-11/40, PDP- 11/45 y nalmente a la PDP-11/70. Cada una de estas maquinas ten an caracter sticas que gradual- mente se a~nad an a la complejidad del hardware de Unix pod a soportar. Dennis Ritchie y otros en los Labortarios Bell continuaron el proceso de desarrollo de Unix incorporando utilidades (tales como un procesador de texto). Como la mayor a de los sistemas operativos, Unix fue originalmente escrito en lenguaje ensam- blador, lo cual lo hac a dependiente de la maquina y que solo trabajara en una computadora (o una familia de computadoras). Por lo que transferir Unix de una computadora a otro requer a una reescritura importante de los programas. Disponible como Reporte Interno No. ITESMCEM-DCC-2000-1 1
  • 2. Thompson y Ritchie eran usuarios experimentados de Multics, que fue escrito en un lenguaje de alto nivel llamado PL/1 y eran conocedores de las ventajas de utilizar un lenguaje de alto nivel para escribir sistemas operativos. Es por esto que decidieron reescribir Unix en un lenguaje de alto nivel. El lenguaje que eligieron era C y en 1973 Ken y Dennis reescribieron satisfactoriamente Unix en C1. Las universidades y colegios han jugado un papel importante en la popularidad del sistema operativo Unix. En 1975 los Laboratorios Bell ofrecieron, a un costo m nimo, el sistema operativo Unix a las instituciones educativas. El objetivo original no era producir un sistema operativo, sino crear un ambiente de trabajo en el cual pudieran proseguir con su objetivo principal: la investigacion en un area determinada. La palabra Unix viene de una deformacion a traves del tiempo de lo que es la palabra Unics. Esta ultima es una parodia del nombre del sistema operativo Multics que signi caba MULtiprocessing Computer System, (Unics vendr a a signi car UNIprocessing Computer System). 2 Los diferentes sistemas Unix La estandarizacionde Unix se ha convertidoen un tema cada vez mas debatido. Parecepoco probable que el futuro surja una norma Unix unica. AT&T continua promoviendo su version llamada Unix System V, muy utilizada en la industria. Por otro lado, las universidades siguen promoviendo la version Unix de Berkeley, el cual es un derivado de la version de AT&T. La comunidad Unix ha cooperado en el desarrollo de una especi cacion estandarizada del sistema denominada POSIX, que consiste de un subconjunto comun de los principales sistemas Unix. La fundacion de software abierto se constituyo para producir una version de Unix basada, en gran medida, en la version AIX de IBM. Pasaran muchos a~nos antes de que aparezca solo Unix estandarizado, si es que se consigue alguna vez. Tal vez no exista un dise~no de sistemas operativos capaz de satisfacer las diversas necesidades de la comunidad informatica mundial. El origen de los diferentes sistemas Unix tiene su raiz en lo que es el nacimiento, en 1975 de la version 6 de los laboratorios AT&T de los Laboratorios Bell. Despues de la presentacion de esta version dos l neas diferentes conocidas como Sistema V y BSD. Los desarrolladores de la Universidad de California en Berkeley (de ah el nombre de BSD) han agrandado Unix de diferentes formas a~nadiendo un mecanismo de memoria virtual, el shell C, el control de tareas, la red TCP/IP, por nombrar solo un peque~no numero. Algunas de estos nuevos mecanismos fueron introducidos en els l neas de codigo de AT&T. El sistema V version 4 es presentado como la fusion del Sistema V y de BSD, pero eso no es completamente exacto. El sistema V Version 4 results de la incorporacion de las funciones mas importantes de BSD y de SunOS en el seno de Sistema V. Esta union puede ser vista como una union mas que como una fusion, en la cual algunas caracter sticas de cada uno son heredadas (a las cuales se debe a~nadir caracter sticas cuyo origen es incierto). La proliferacion de constructores informaticos en el curso de los a~nos 80's provoco la aparicion en el mercado de decenas de nuevos sistemas Unix. Unix fue escogido por su bajo costo y por sus caracter sticas tecnicas, pero tambien a causa de la ausencia de otras opciones. Estos proveedores se basaron en versiones de BSD o susrena V aportando modi caciones menores y/o mas importantes. La mayor parte de los que aun subsisten provienen del sistema V version 3 (en general version 3.2), sistema V version 4 y algunas veces de BSD 4.2 o 4.3 (SunOS es una excepcion ya que tiene su origen en una version mas antigua de BSD). Para complicar las cosas, varios proveedores han mezclado caracter sticas de BSD y del Sistema V en el corazon de un solo sistema operativo. 2.1 El sistema XENIX Xenix es la primera version de Unix dise~nada para microcomputadoras, aun es utilizada. Esta version proviene de la version 7 y ha sido convertido progresivamente en un sistema V versi'on 2. 1Aproximandamente un 95% de Unix esta escrito en C, una parte muy peque~na esta todav a escrita en lenguaje ensamblador, esa parte se encuentra concentrada en el nucleo, la parte que interacciona directamente con el hardware. 2
  • 3. XENIX in uencio Sistema V version 3, la mayor parte de estas funciones fueron incorparados en el Sistema V version 3.2 2.2 El sistema OSF/1 En 1988, Sun y AT&T se pusieron de acuerdo para desarrollar juntos las futuras versiones de sistema V. En respuesta, IBM, DEC, Hewlett-Packard as como otros constructores y sociedades informaticas fundaron la OSF (Open Software Foundation) cuyo objetivo esra la concepcion de otro sistema operativo compatible con Unix y, sobre todo, independiente de AT&T. OSF/1 es el resultafo de este esfuerzo, aunque OSF/1 constituye mas una de nicion de estandares que una implementacion real. Entre los estandares mas importantes se encuentran POSIX (de nido por IEEE/ANSI), el AT&T System V Interface De nition (SVID), la Application Environment Speci cation (AES) de la OSF y el X/Open Portability Guide de la X/Open, un consorcio fundado en Gran Breta~na en 1984. 2.3 El sistema SCO Unix Este nombre hace referencia a SCO Open Desktop y SCO Open Server Release 3 producidos por Santa Cruz Operations Inc. (que funciona sobre procesadores 486). Este sistema operativo es una implmentacion de V.3.2.5. 2.4 El sistema SunOS Es el sistema operativo de tipo BSD mas conocido que ha introducido, en el mundo Unix, funcio- nalidades importantes (entre la mas importante esta NFS). Sun a querido reemplazar SunOS por Solaris pero ha cedido a la presion de los usuarios: Sun continua proporcionando los dos sistemas operativos. 2.5 El sistema Solaris Es una implementacion del sistema V.4 propuesto por Sun. Hay que mencionar que Solaris 2.x a veces es denominado SunOS 5.x. 2.6 El sistema HP-UX Es la version de Unix de Hewlett-Packard que sigue las caracter sticas del Sistema V incorporando varias caracter sticas de OSF/12. HP-UX ha sido consideraablemente modi cado entre las versiones 9 y 10. Desde el punto de vista de la administracion, HP-UX 9 se parece al sistema V.3 con algunas extensiones, por otro lado HP-UX 10 se asemeja a un sistema operativo del tipo V.4. 2.7 El sistema DEC OSF/1 La version OSF/1 de Digital Equipment Corporation se parece en gran medida a un sistema BSD generica del punto de vista de la administracion del sistema, aunque en el fondo se trata de un Sistema V. HP-UX y DEC OSF/1 claman su conformidad a un conjunto de estandares practicamente identicos pero estas versiones deben ser administradas de forma diferente. 2.8 El sistema IRIX Las primeras versiones de IRIX incorporan numerosas caracter sticas de BSD pero estas han desa- parecido en el transcurso del tiempo a favor de una conformidad a V.4. 2OSF: Open Software Foundation. 3
  • 4. 2.9 El sistema AIX El sistema operativo de IBM de tipo Sistema V, tambien ofrece diferentes funcionalidades de V.4, BSD y OSF/1 (ademas de las inevitables caracter sticas propias a IBM). 2.10 El sistema Linux Linux es un clon de Unix en el dominio publico destinado a los procesadores Intel. Linux ha ganado en popularidad regularmente y es muy util en varias situaciones: es un sistema Unix poco costoso que puede constituir un ambiente de investigacion para los colegios y universidades, una solucion economica para contar con una conexion Internet para las empresas peque~nas, un sistema Unix domestico para los profesionales y una terminal X barata para los sitios Unix con presupuesto reducido. El nucleo fue desarrollado por Linux Torvaldas, (Linux es el Unix de Linus, Linus Unix) aunque otras personas han contribuido (y contribuyen) a su desarrollo. Linux es globalmente de tipo BSD. Tecnicamente, el nombre de Linux hace referencia al corazon del sistema operativo (el nucleo y algunos controladores de perifericos) pero eso nombre tambien se aplica al software de dominio publico, donde las fuentes son de origen variado, que constituyen una distribucion. 2.11 El sistema Minix Minix es un sistema operativo desarrollado por Andrew Tanenbaum con nes pedagogicos. Pensado en un principio para ser ejecutado a partir de discos exibles, en una PC compatible. Minxi fue la fuente de inspiracion de Linus para desarrollar el sistema operativo Linux. 2.12 El sistema FreeBSD FreeBSD es un sistema operativo Unix BSD avanzado para arquitecturas Intel (x86), DEC Alpha y PC-98. Es atendido por un gran equipo de personas repartidas en todo el mundo. 2.13 El sistema OpenBSD El proyecto OpenBSD produce una multiplatoforma libre del sistema operativo Unix 4.4 BSD. Los esfuerzos de los integrantes del proyecto van dirigidos a reforzar la portabilidad, estandarizacion, seguridad, correctness" e integracion de criptograf a. OpenBSD soporta emulacion binaria de la mayor a de los programas de Solaris SVR4, FreeBSD, Linux, BSD/OS, SunOS y HP-UX. 2.14 El sistema BSD/OS El nucleo de BSD/OS esta inspirado del nucleo del sistema operativo 4.4 BSD de la Universidad de California Berkeley, con mejor as de BSDi. Es una plataforma de red cliente/servidor rapida, escalable y que soporta multitasking. Cuenta con una peque~na huella, memoria virtual (opcional) y memoria proteccion, con soporte para 768 Mbytes de RAM hasta 3.75 Gbytes de memoria virtual para el usuario. BSD/OS tiene un buen rendimiento en sistemas equipados con un poco mas de 2 Mbytes de RAM. 3 Caracter sticas principales del sistema Unix El sistema operativo Unix es un sistema que presenta un par de caracter sticas conocidas como multiprogramacion y tiempo compartido. La primera de ellas permite que varios trabajos se efectuen al mismo tiempo y gracias a la segunda varias personas pueden estar dentro del sistema al mismo tiempo realizando actividades diferentes. El sistema esta constituido por tres partes, el nucleo, el shell y los programas. El nucleo es la parte medular de Unix. Es el encargado de asignar tiempo y memoria a los programas y manejar las comunicaciones para responder a las peticiones que realice el usuario. 4
  • 5. El shell se compone principalmente de la l ena de comandos. El shell es el encargadode interpretar lo que el usuario desea hacer y, si es posible, de llevarlo a cabo. En casode que no sea posible despliega un mensaje de error. Los programas constituyen lo que se conoce como comandos. Es a traves de estos comandos que el usuario le va a indicar al usuario lo que desea realizar. Una forma de ilustrar como trabajan las partes anteriores es a traves del siguiente ejemplo. Supongamos que un usuario desea borrar el archivo toto, Dicho usuario sabe que el programa (comando) rm permite borrar archivos. Usando el shell, el usuario introduce el comando ( rm toto ). El shell busca el lugar donde se encuentra el archivo rm que contiene el codigo para borrar un archivo. Una vez que lo encuentra lo ejecuta. A traves de funciones especiales dentro del codigo (conocidad como llamadas de sistema) se le transmiten peticiones al nucleo. El nucleo es el encargado de borrar el archivo toto. Cuando el programa rm termina de correr, el shell se pone en un estado de escucha esperando que el usurio teclee mas comandos. El presente documento esta enfocado a lo que son las dos ultimas partes. Por un lado se explica todo lo relacionado con el shell y por el otro se da una lista de los comandos mas importantes de lo que es el sistema operativo Unix. 3.1 Entrando al sistema Para que una persona (conocida como usuario) pueda tener acceso al sistema es necesario que se identi que con el. Esta identi cacion se realiza proporcionando al sistema un nombre (conocido como cuenta o login) y una contrase~na (conocida como password). El nombre de la cuenta debe contar con ocho caracteres como maximo y es creado por el adminis- trador del sistema. Este puede consistir en el apellido, nombre, o una clave asociada con el usuario (p.e. su matr cula). La contrase~na o password tambien es creada por el administrador del sistema y puede llegar a ser cambiada por el usuario, aunque muchos sistemas no lo permiten por razones de seguridad. Esta formado por al menos seis caracteres, (de los cuales al menos dos caracteres deben de ser diferentes a letras) El sistema pregunta al usuario su cuenta a traves del mensaje login: y, una vez tecleada esta, pregunta la contrase~na desplegando password:. Cuando el usuario teclea su password no se distingue ninguno de los caracteres tecleados en la pantalla. Un ejemplo de esto es: login: rgomez password: Si hay algun error, ya sea que hubo un error al introducir la cuenta o el password (o que el password fue cambiado y no coincide con la cuenta) se imprime un mensaje de error. Por ejemplo: login: rgomez password: ***** login incorrect login: Es importante remarcar que Unix no indica si el error estuvo al introducir la cuenta, el password o los dos, simplemente despliega un mensaje de error y el usuario debe intentar introducir sus datos de nuevo. En algunos sistemas si al tercer intento el sistema le sigue negando el acceso al usuario la maquina se apaga o el sistema se desactiva. Si todo se pasa bien, aparece el prompt, el cual indica el principio de la l nea de comandos. Es a traves de los comandos introducidos en esta l nea que el usuario le va a indicar al sistema lo que desea hacer. 3.2 La l nea de comandos La l nea de comandos empieza en el prompt y termina en el momento en que el usurio presiona la tecla <RETURN>. La primera palabra que se introduce en la l nea de comandos palabra es el nombre de un archivo ejecutable, o de un comando del sistema. 5
  • 6. La l nea de comandos forma parte de lo que se conoce como shell. El shell es el encargado de leer el comando y ejecutarlo. Existen una gran variedad de shells, entre los mas comunes encontramos el bourne-shell (el primer shell), el c-shell, el tc-shell y el korne-shell. La l nea de comandos empieza en el prompt. Por default el prompt es representado por un caracter aunque esto puede ser modi cado por el usuario. Por ejemplo el prompt por default del bourne-shell es el caracter $ y del c-shell es el caracter %. En este documento se utiliza el prompt del shell del autor el cual es de la forma: rogomez@armagnac:89> donde se despliega la cuenta, la maquina y el numero de instruccion. El comando puede ser seguido por una o mas opciones, y/o uno o mas argumentos, (separados por espacios o tabulaciones). El comando junto con sus opciones y/o argumentos, no es ejecutado antes del <RETURN>. Una vez que el comando termina su ejecucion aparece el prompt de nuevo para indicar que el sistema esta listo para ejecutar otro comando. Para poder capturar una l nea de comando muy larga, es posible de insertar el caracter al nal de la primera l nea, despues de teclear <RETURN>, para poder teclear el resto de la l nea de comando en una segunda l nea de la pantalla. Ejemplo: rogomez@armagnac:2>~/bin/xvile articulo.tex -display rogomez:0.0 rogomez@armagnac:3> 3.3 Sintaxis de los comandos UNIX Como se dijo en la seccion anterior varios comandos cuentan con opciones y/o argumentos. Ahora bien, es necesario dejar un espacio: entre el nombre del comando y las opciones y/o los argumentos entre las opciones y los argumentos entre los argumentos Un comando tiene opciones por default, si se quieren utilizar estas opciones se tiene que teclear: rogomez@armagnac:4>nombre-comando <RETURN> En caso contrario los siguientes formatos son posibles: 1. nombre-comando argumento(s) <RETURN> 2. nombre-comando opcion(es) <RETURN> 3. nombre-comando opcion(es) argumento(s) <RETURN> En general se puede decir que el comando le indica al sistema que hacer, las opciones como hacerlo y los argumentos sobre quien hacerlo. 3.3.1 El comando: >que hacer? El comando es la primera palabra de la l nea de comandos y siempre corresponde al nombre de un archivo ejecutable. Por ejemplo: rogomez@armagnac:4> ls rogomez@armagnac:5> who rogomez@armagnac:6> ps 6
  • 7. 3.3.2 Las opciones: como hacerlo? Un comando puede realizar diferentes tareas, o presentar resultados en diferentes formatos, de acuer- do a sus opciones. Las opciones siguen al comando (separadas por un espacio) y le indican al sistema con cual opcion se debe ejecutar el comando. En caso de que no se de ninguna se toma la opcion por default. Generalmente estan precedidas de un caracter - (o a veces de un caracter +). Por ejemplo: rogomez@armagnac:7> ls - l rogomez@armagnac:8> date +%d%m%y 3.3.3 Los argumentos: sobre quien actuar? Generalmente se re eren a uno, o varios, nombres de archivo sobre los cuales el comando sera ejecutado. rogomez@armagnac:9> cat capitulo rogomez@armagnac:10> cp archivo nuevo rogomez@armagnac:11> ls -l tarea* 3.4 Comandos en minusculas y MAYUSCULAS Es muy importante remarcar que Unix, a diferencia de otros sistema operativos, no hace diferencia entre letras MAYUSCULAS y minusculas en los nombres de los comandos. Un comando constuido exclusivamente de letras minusculas no sera reconocido si alguna de estas letras es mayuscula. Es decir, no es lo mismo: rogomez@armagnac:12>cd /bin que: rogomez@armagnac:13>CD /BIN CD: Command not found En el primer de los casos se hara lo que se el comando indique. En el segundo ejemplo mientras que el segundo no sera reconocido por el sistema y desplegara el mensaje de error correspondiente a este echo: Comando no encontrado. El mismo mensaje es desplegado si el comando no existe, o si se introducen carateres al azar sin signi cado alguno para el sistema. 3.5 Variantes en la ejecucion de un comando Se de ne ejecucion de un comando a todo el trabajo que tiene que realizar dicho comando para satisfacer lo solicitado por el usuario. Existen varias formas en que esta ejecucion puede llevarse a cabo. A continuacion se explicaran algunas de las mas comunes. 3.5.1 Redireccion de las entradas/salidas estandares El resultado de la ejecucion de un comando aparece en la salida estandar (la pantalla), mientras que los datos (y el comando mismo) son le dos de la entrada estandar (el teclado). Unix permite redireccionar las entradas/salidas estandar a partir de los delimitadores angulares: < redireccion de la entrada estandar. > redireccion de la salida estandar (creacion) >> redireccion de la salida estandar (a~nadir) 7
  • 8. Por redireccion de salida estandar se entiende que en lugar de desplegar los resultados en pantalla el sistema los env a a un archivo, y por redireccion de la entrada estandar provoca que en lugar de obtener los datos del teclado se lean de un archivo. Un ejemplo de redireccion de la entrada estandar es: rogomez@aramagnac:14>mail profesor < tarea.txt En este caso la entrada estandar del comando mail es substituida por el archivo tarea.txt. Un ejemplo de redireccion de la salida estandar (creacion) se presenta a continuacion: rogomez@armagnac:15>cat arch1 arch2 > final.txt La salida estandar del comando cat es redirigida al archivo final.txt. Esto trae como con- secuencia que los los archivos arch1 y arch2 seran copiados una despues del otro en el archivo final.txt. En la mayoria de los sistemas si este archivo ya existe, el sistema desplegara un mensaje de error por ejemplo: rogomez@armagnac:16>ls > sal sal: File exists.+. rogomez@armagnac:17> El siguiente es un ejemplo de redireccion de la salida estandar utilizando los caracteres >>: rogomez@armagnac:17>echo ERRORES DE COPIA >> log La salida estandar del comando echo sera el archivo log. Dependiendo del tipo de sistema Unix y shell utilizado, si el archivo no existe, este sera creado. Si el archivo ya existe, se a~nadira el resultado del comando echo al nal de dicho archivo. 3.5.2 Ejecucion en background Para los comandos lentos en su ejecucion, resulta interesante poder disponer de la terminal de tal forma que se puedan ejecutar otros comandos. Poniendo un & despues del comando y de sus opciones y/o argumentos, el sistema ejecutara el comando en background, desplegando el prompt de nuevo y dejando al sistema listo para leer otro comando. Por ejemplo: rogomez@armagnac:18> netscape tareas.html -display walhalla: 0.0 & 1] 712 rogomez@armagnac:19> ejecutara el comando netscape con todas sus opciones y argumentos en background. El numero 1 dentro de los corchetes es el numero de trabajo (o job) asignado por el sistema y el 712 es el identi cador del proceso que se encarga de dicho trabajo. Es importante remarcar que el resultado de la ejecucion de estos comandos sera desplegado en la misma pantalla donde se ejecuto el comando. 3.5.3 Agrupacion de comandos Si se agrupan varios comandos entre parentesis ( ), estos seran considerados como una sola unidad. Por ejemplo, los siguientes comandos: rogomez@armagnac:19> echo El dia de hoy: > log rogomez@armagnac:20> date >> log rogomez@armagnac:21> echo las personas siguientes >> log rogomez@armagnac:22> who >> log 8
  • 9. rogomez@armagnac:23> echo se encuentran conectadas >> log rogomez@armagnac:24> pueden agruparse en uno solo: rogomez@armagnac:24> ( echo El dia de hoy date echo las personas siguientes who echo se encuentran conectadas ) > log rogomez@armagnac:25> 3.5.4 Ejecutando comandos secuenciales Es posible teclear diferentes comandos sobre la misma l nea de comandos, separandolos por punto y comas ( ). En este caso los comandos son ejecutados secuencialmente, es decir que el segundo comando es ejecutado despues de que el primero termino su ejecucion. Por ejemplo: rogomez@armagnac:25> date Wed Oct 12 10:44:16 MET 1986 rogomez@armagnac:26> ls -C prueba archivo rogomez@armagnac:27> who rogomez console Oct 12 09:09 rogomez ttyp0 Oct 12 10:38 toto ttyp1 Oct 12 11:08 rogomez@armagnac:28> se pudo haber tecleado como: rogomez@armagnac:28> date ls -C who Wed Oct 12 10:44:16 MET 1986 prueba archivo rogomez console Oct 12 09:09 rogomez ttyp0 Oct 12 10:38 toto ttyp1 Oct 12 11:08 rogomez@armagnac:29> 3.5.5 Pipelines En algunas ocasiones es importante que el resultado de la ejecucion de un comando sea la entrada de otro. Una opcion para resolver lo anterior es utilizar redirecciones, la salida del comando enviarla a un archivo y la entrada del otro comando redireccionarla con respecto a dicho archivo. La salida estandar de un comando puede ser conectada a la entrada estandar de otro comando a traves de lo que se conoce como pipelines. Un pipeline es un puente de comunicacion entre la salida de un proceso y la entrada de otro. Es representado por una l nea vertical |. La sintaxis del pipeline es: comando ] ] | ] ] | comando ] ] Un ejemplo de uso del pipeline es el siguiente: rogomez@armagnac:28>cat numeros uno un dos deux tres trois cuatro quatre cinco cinq 9
  • 10. rogomez@armagnac:29>cat numeros | grep dos | more dos deux rogomez@armagnac:30> En este caso la salida del comando cat es la entrada del comando grep y la salida de este es la entrada del comando more el cual al nal lo imprime en pantalla. En realidad una de las ventajas de los pipelines es el evitar la creacion de archivos temporales para dejar resultados parciales en ellos. En efecto, a traves de redirecciones y con archivos temporales es posible obtener el mismo resultado. Esto se le deja como ejercicio al lector. 4 Comandos relacionados con archivos Una de las partes fundamentales del sistema operativo Unix son los archivos. Todo se hace a traves de ellos. Los archivos se encuentran agrupados en como directorios. Estos directorias se encuentran organizados en una jerarqu a de arbol, donde la ra z esta representada por el caracter (ver gura 1 ). raulm rogomez egarcia / exportdevbinhome tareas personal cv.ps reporte.txt p1.c p2.c Figura 1: Los diferentes pasos para comunicar dos procesos a traves de un pipe Los comandosque se describen en esta seccion permiten ver el contenido de los archivos, borrarlos, moverlos, renombrarlos, listar el contenido de un directorio y cambiar de directorio. 4.1 El comando ls Descripcion: despliega los nombres de los archivos que se encuentran dentro del directorio actual Sintaxis: ls opciones] Algunas opciones: -a lista los archivos que comienzan con un "." -l listado en formato largo -d si el argumento es un directorio lista el nombre del archivo directorio y no su contenido -s da el tama~no de los archivos en kilo-bytes -u despliega la ultima hora de acceso en lugar de la ultima hora de modi cacion -t acomoda los archivos en funcion de la hora de la ultima modi cacion 10
  • 11. -i imprime el numero de referencia (i-node) de los archivos -C lista los archivos en columnas -g muestra el propietario del grupo de un archivo en un formato largo Ejemplo: rogomez@armagnac:45>ls -l total 4 d r w x r - x r - x 1 cachafas 512 Oct 12 10:13 Sundraw d r w x r - x r - x 1 cachafas 512 Dec 11 20:13 Sunpaint - r w x r - x r - x 1 cachafas 512 Sep 15 18:13 toto - r w - r - x - - x 1 cachafas 512 Jan 12 01:14 curso.html rogomez@armagnac:46> 4.2 El comando more Descripcion: despliegan el contenido de un archivo parandose cada vez que termina la pantalla. Sintaxis: more nombre-archivo Ejemplo: rogomez@armagnac:201>more numeros.txt uno un dos deux tres trois cuatro quatre cinco cinc --More--(53%) seis six siete sept ocho huit nueve neuf diez dix rogomez@armagnac:202> 4.3 EL comando cat Descripcion: es utilizado para ver el contenido de un archivo. Lo que hace es copiar uno o varios archivos en la salida estandar (la pantalla por default). A diferencia del anterior este no se detiene entre pantalla y pantalla. Sintaxis: cat nombre-archivo Ejemplo: rogomez@armagnac:207>cat numeros.txt uno un dos deux tres trois cuatro quatre cinco cinc seis six siete sept ocho huit nueve neuf 11
  • 12. diez dix rogomez@armagnac:208> 4.4 El comando pwd, print working directory Descripcion: despliega el camino de acceso del directorio actual (donde se encuentra dentro del sistema de archivos). Este comando despliega el nombre de un directorio nunca el de un archivo. Sintaxis: pwd Ejemplo: rogomez@armagnac:61>pwd /home/dic/rogomez/Articulos rogomez@armagnac:62> 4.5 El comando cd Descripcion: permite cambiar de directorio. Una vez realizado el cambio despliega el directorio a donde se cambio. Sin parametro alguno lo posiciona en el directorio donde inicio el usuario, cuando se entro al sistema. Dando como parametro .. remonta en el directorio del padre. Sintaxis: cd nombre-directorio ] Ejemplo: rogomez@armagnac:210>cd Cursos/ /home/rogomez/Cursos rogomez@armagnac:211>cd .. /home/rogomez rogomez@armagnac:212> 4.6 El comando rm (remove) Descripcion: borra el nombre de un archivo o, si ese nombre fuera el ultimo (el numero de ligas es 1), el archivo sera f sicamente" suprimido Sintaxis: rm archivo archivos ] Opciones: -r recursivamente (si directorio contiene otro, borra contenido de este -f forza (no despliega errores, ni hace preguntas) -i interactivo, (pregunta) Ejemplo: rogomez@armagnac:12>rm -i toto.txt rm: remove toto.txt (yes/no)? y rogomez@armagnac:13>rm prog.c rogomez@armagnac:14>rm -i Tareas/ rogomez@armagnac:15> 12
  • 13. 4.7 El comando mkdir Descripcion: utilizado en la creacion de directorios. Sintaxis: mkdir directorio directorio ] Ejemplos: rogomez@armagnac:525>mkdir /usr/usr2/alumno1 rogomez@armagnac:526>mkdir test direc1 rep2 rogomez@armagnac:527>mkdir arbo arbo/rep1 rogomez@armagnac:528> 4.8 El comando rmdir Descripcion: borra directorios, sin embargo este comando no borrara el directorio si este no se encuentra vac o Sintaxis: rmdir directorio directorio ] Ejemplo: rogomez@armagnac:453> rmdir Tareas rogomez@armagnac:454> rmdir Proyectos rogomez@armagnac:455>rmdir Temporal rmdir: directory "Temporal": Directory not empty rogomez@armagnac:456>rm Temporal/* rogomez@armagnac:457> 4.9 El comando chmod Descripcion: sirve para cambiar los permisos de escritura, lectura y ejecucion de una archivo o directorio. Solo el creador del archivo o directorio puede cambiar dichos permisos. 13
  • 14. Sintaxis: chmod nuevo-modo archivos ] directorios ] Opciones: Existen dos formas de especi car el nuevo modo: 1. en octal: chmod ooo archivo 2. en modo simbolico: chmod ugoa ] = -] rwx ] + donde u permisos del usuario g permisos del grupo o permisos de los otros a todos los permisos Ejemplo rogomez@armagnac:231> ls -lg e1 - r w - r w - r w - 1 toto daemon 0 Oct 12 18:20 e1 rogomez@armagnac:232> chmod 755 e1 rogomez@armagnac:233> ls -lg e1 - r w x r - x r - x 1 toto daemon 0 Oct 12 18:20 e1 rogomez@armagnac:234> chmod a-x e1 rogomez@armagnac:235> ls -lg e1 - r w - r - - r - - 1 toto daemon 0 Oct 12 18:20 e1 rogomez@armagnac:236> chmod g+x e1 rogomez@armagnac:237> chmod o-r e1 rogomez@armagnac:238> ls -lg e1 - r w - r - x - - - 1 toto daemon 0 Oct 12 18:20 e1 rogomez@armagnac:239> 4.10 El comando cp Descripcion: copia un archivo ordinario Sintaxis: cp archivo1 archivo2 cp archivo archivos ] directorio Ejemplos: rogomez@armagnac:239>cp arch1 arch2 rogomez@armagnac:240>cp arch1 direc rogomez@armagnac:241>cp arch1 direc/arch2 rogomez@armagnac:242>cp arch1 arch2 arch3 direc rogomez@armagnac:243> Otros: cp no modi ca los archivos originales, tan solo los duplica la opcion -r es copia recursiva, si el archivo a copiar es un directorio copia el contenido de este 4.11 El comando mv, move Descripcion: desplaza un archivo o lo renombra Sintaxis: mv antiguo-nombre nuevo-nombre mv archivo archivos ] directorio 14
  • 15. Ejemplos: rogomez@armagnac:244>mv arch-a arch-b rogomez@armagnac:245>mv direc1 direc2 rogomez@armagnac:246>mv arch1 arch2 arch3 arch4 direc rogomez@armagnac:247>mv arch1 ../bin/fx rogomez@armagnac:248> 4.12 El comando ln, link Descripcion: crea un nuevo nombre para un archivo, util para archivos sistemas, evitar copiar dos archivos con el mismo nombre (ahorrar espacio). Solamente con la opcion -s se puede cambiar el nombre a un directorio Sintaxis: ln archivo nuevo-nombre ln -s archivo otro-nombre Ejemplos: rogomez@armagnac:248> ls -li /* listado largo con i-node */ total 2 14411 -rw-r--r-- 1 rgomez 412 Oct 10 16:56 arch1 14412 -rw-r--r-- 1 rgomez 167 Oct 10 16:57 archivo rogomez@armagnac:249>ln arch1 fichier rogomez@armagnac:250>$ ls -li total 3 14411 -rw-r--r-- 2 rgomez 412 Oct 10 16:56 arch1 14411 -rw-r--r-- 2 rgomez 412 Oct 10 16:56 fichier 14412 -rw-r--r-- 1 rgomez 167 Oct 10 16:57 archivo rogomez@armagnac:251> Otros: En BSD 4.x es posible crear ligas simbolicas entre archivos o directorios correspondientes a sistemas de archivos diferentes. Por ejemplo: rogomez@armagnac:252> ls arch1 dir1 rogomez@armagnac:253> ln -s arch1 fichier rogomez@armagnac:254> ls -li total 3 14411 -rw-r--r-- 1 rgomez 412 Oct 10 16:56 arch1 14412 lrwxrwxrwx 1 rgomez 4 Oct 10 17:09 fichier -> arch1 38935 drwxr-xr-x 2 rgomez 512 Oct 10 17:09 dir1 rogomez@armagnac:255> ln -s dir1 repertoire rogomez@armagnac:256> ls -li total 4 14411 -rw-r--r-- 1 rgomez 412 Oct 10 16:56 arch1 14412 lrwxrwxrwx 1 rgomez 4 Oct 10 17:09 fichier -> arch1 38935 drwxr-xr-x 2 rgomez 512 Oct 10 17:09 dir1 14413 lrwxrwxrwx 2 rgomez 4 Oct 10 17:10 dir1 -> repertoire rogomez@armagnac:257> 15
  • 16. 4.13 El comando grep Descripcion: sirve para encontrar dentro de un conjunto de archivos, todas las l neas que contienen una cadena de caracteres especi cada por una expresion regular Sintaxis: grep opciones ] expr-reg archivos ] Opciones: -v despliega las l neas que no contienen la expresion -c imprime solo el numero de l neas que contienen la expresion -i no hace diferencia entre mayusculas y minusculas -n despliega el numero de l nea Ejemplos: rogomez@armagnac:15>cat agenda aguirre claudia 5456789 burron regino 8719890 gomez roberto 3218956 gomez gabriel 3331811 zapata adolfo 4782911 rogomez@armagnac:16>grep gomez agenda gomez roberto 3218956 gomez gabriel 3331811 rogomez@armagnac:17>cat numeros uno un dos deux tres trois cuatro quatre cinco cinc rogomez@armagnac:18>grep cinc numeros cinco cinc rogomez@armagnac:19> Notas: Dentro de la misma familia, se encuentran los comandos siguientes: fgrep no admite las expresiones regulares egrap admite expresiones regulares extendidas 4.14 El comando sort Descripcion: permite ordenar las l neas de un archivo texto. Por default, sort ordena en funcion de todos los caracteres de la l nea, en orden creciente de los valores de caracteres ASCII. Sintaxis: sort opciones] llave de ordenamiento] archivos] Opciones: -u suprime las l neas conteniendo las llaves identicas -n ordenamiento numerico -b ignorar los blancos en principio de l nea 16
  • 17. Ejemplos: rogomez@armagnac:R20>cat numeros uno un dos deux tres trois cuatro quatre cinco cinc rogomez@armagnac:21>sort numeros cinco cinc cuatro quatre dos deux tres trois uno un rogomez@armagnac:22> 4.15 El comando wc Descripcion: permite contar el numero de l neas, palabras y caracteres contenidos en los archivos Sintaxis: wc opciones] archivos] Opciones: -l cuenta solo las l neas -w cuenta solo las palabras -c cuenta solo los caracteres Ejemplos: rogomez@armagnac:22>wc /etc/passwd 20 37 752 /etc/passwd rogomez@armagnac:23>cat numeros uno un dos deux tres trois cuatro quatre cinco cinc rogomez@armagnac:24>wc numeros 5 10 81 numeros rogomez@armagnac:25>wc -c /etc/passwd 752 /etc/passwd rogomez@armagnac:26> 4.16 El comando tail Descripcion: imprime la parte nal de un archivo en la salida estandar Sintaxis: tail -/n] opciones] archivo] + Opciones: -n imprime las ultimas n l neas, (default 10 ultimas) +n imprime a partir de la enesima l nea (incluida) -r imprime las l neas en orden inverso 17
  • 18. Ejemplos: rogomez@armagnac:26>tail /etc/passwd nobody:x:60001:60001:Nobody:/: noaccess:x:60002:60002:No Access User:/: nobody4:x:65534:65534:SunOS 4.x Nobody:/: msql:x:85:10:Mini SQL:/local/Hughes:/bin/csh mant:x:86:10:Mantenimiento:/tmp:/sbin/sh nsuser:x:101:101:Http User:/local/ns:/bin/sh root-mdg:x:0:0:Damian Guerra:/tmp:/bin/csh root-gg:x:0:0:Guillermo Gutierres:/tmp:/bin/csh root-im:x:0:0:Ixchell Morales:/tmp:/bin/csh root-er:x:0:0:Edgar Romero:/tmp:/bin/csh rogomez@armagnac:27>tail +3 numeros tres trois cuatro quatre cinco cinc rogomez@armagnac:28>cat /etc/passwd | tail -4 root-mdg:x:0:0:Damian Guerra:/tmp:/bin/csh root-gg:x:0:0:Guillermo Gutierres:/tmp:/bin/csh root-im:x:0:0:Ixchell Morales:/tmp:/bin/csh root-er:x:0:0:Edgar Romero:/tmp:/bin/csh rogomez@armagnac:29> 4.17 El comando head Descripcion: imprime el principio de un archivo en la salida estandar Sintaxis: head -n] archivo] Opciones: -n imprime las n primeras l neas (default 10 primeras) Ejemplos: rogomez@armagnac:35>head -2 numeros uno un dos deux rogomez@armagnac:36>head /etc/passwd root:x:0:1:Super-User:/:/sbin/sh daemon:x:1:1::/: bin:x:2:2::/usr/bin: sys:x:3:3::/: adm:x:4:4:Admin:/var/adm: lp:x:71:8:Line Printer Admin:/usr/spool/lp: smtp:x:0:0:Mail Daemon User:/: uucp:x:5:5:uucp Admin:/usr/lib/uucp: nuucp:x:9:9:uucp Admin:/var/spool/uucppublic:/usr/lib/uucp/uucico listen:x:37:4:Network Admin:/usr/net/nls: rogomez@armagnac:37> 18
  • 19. 5 Comandos relacionados con impresiones Una de las actividades mas comunes que realiza un usuario es la impresion de documentos. Es posible enviar a imprimir un documento directamente de la aplicacion o utilizando algunos de los comandos que Unix proporciona para ello. Los siguientes comandos sirven para el control de las impresiones. 5.1 El comando lpr (line printer) Descripcion: el principal comando de impresion. Crea un trabajo de impresora en un area de spooling para una impresion subsecuente (un trabajo de impresion se divide en un archivo de control y otro de datos) Sintaxis: lpr opciones ] archivos ] Opciones: -P dest para elegir la impresora -# n para obtener n copias Ejemplo: rogomez@armagnac:43> lpr abc rogomez@armaganc:44> lpr -Pbali prog1.c results.txt rogomez@armagnac:45> 5.2 El comando a2ps Descripcion: imprime un archivo ASCII en formato postcript Sintaxis: a2ps opciones ] archivos ] Opciones: -P dest + para elegir impresora -#n para obtener n ejemplares -1 imprime una pagina por hoja -l imprime en modo landscape -p imprime en modo portrait -n despliega el numero de l neas Ejemplo: rogomez@armagnac:809>a2ps numeros numeros (plain): 1 page on 1 sheet] request id is CC-723 (1 file) Total: 1 page on 1 sheet] sent to the default printer rogomez@armagnac:810> 5.3 El comando lpq Descripcion: permite ver el estado de las colas de espera de impresion Sintaxis: lpq opcion ] usuario ] 19
  • 20. Opciones: -P dest para escoger la impresora -l formato largo Ejemplo: rogomez@armagnac:810> lpq lp is ready and printing Rank Owner Job File Total Size active root 201 /etc/passwd 350 bytes 1st toto 202 abc 546 bytes rogomez@armagnac:811> 5.4 El comando lprm (line printer remove) Descripcion: permite suprimir los archivos en espera de ser impresos. Sintaxis: lprm opciones ] #job] usuarios] Opciones: -P dest para escoger la cola de espera - suprime todos los archivos del usuario job# borra el archivo que corresponde a ese numero Ejemplo: rogomez@armagnac:810> lprm 202 dfA202sioux dequeued cfA202sioux dequeued rogomez@armagnac:811> 6 Otros comandos Los comandos descritos en esta seccion no pudieron ser agrupados o pertenecen a un grupo muy reducido. El lector encontrara comandos para manejo de terminales procesos, del manual y otros. 6.1 El comando passwd password Descripcion: el comando passwd permite modi car el password de un usuario, para esto el usuario debera de conocer el password de la cuenta que desee modi car. Sintaxis: passwd -l | -y ] -afs] -d usename] ] -e username] - F filename] -n numdays username] -x numdays username] username ] Ejemplo: rogomez@armagnac:121>passwd Changing password Old password: <antiguo password> New password: <nuevo password> Re-enter new password: <nuevo password> rogomez@armagnac:122> 20
  • 21. 6.2 El comando man, (manual de Unix) Descripcion: permite conocer todo lo referente a un comando, llamada de sistema o dispositivo relacionado con Unix Sintaxis: man opcion ] seccion ] titulo(s) Opciones: -k busca todas las secciones del manual que contengan informacion concerniente al co- mando. -s busca en una seccion en espec co informacion sobre el comando. Ejemplo: rogomez@armagnac:122>man man Reformatting page. Wait... done User Commands man(1) NAME man - find and display reference manual pages SYNOPSIS man - ] -adFlrt ] -M path ] -T macro-package ] -s section ] name ... man -M path ] -k keyword ... man -M path ] -f file ... DESCRIPTION The man command displays information from the reference manuals. It displays complete manual pages that you select by name, or one-line summaries selected either by keyword : : Nota: Si no se especi ca ninguna seccion, la pagina a imprimir es buscada en todas las secciones 6.3 El comando echo Descripcion: imprime sus argumentos sobre la salida estandar (la pantalla por default) Sintaxis: echo argumentos ] Ejemplo: rogomez@armagnac:284>echo esto es una prueba esto es una prueba rogomez@armagnac:285> 6.4 El comando which Descripcion: localiza un comando desplegando su pathname o alias. Toma una lista de nombres y busca por los archivos que ser an ejecutados al escribir estos nombres como comandos. Cada argumento es expandido y buscado dentro del path del usuario. Tanto los alias como los paths son tomados del archivo .cshrc. 21
  • 22. Sintaxis: which nombre_archivo ] Ejemplo: rogomez@armagnac:231>which xeyes /home/dic/rogomez/xeyes rogomez@armagnac:232>which opnet opnet: Command not found rogomez@armagnac:233> 6.5 El comando ps Descripcion: proporciona una lista de todos los procesos del sistema. Cada vez que se esta ejecutando un comando o un programa se le asocia un numero de proceso. El comando ps permite ver los numeros asociados a los procesos Sintaxis: ps - ] acCegjklnrSuUvwx ] | num ] kernel name] c-dump-file ] swap-file ] Algunas opciones: -a informacion de procesos pose dos" por otros -l informacion en formato largo -r restringe la salida a los procesos que estan corriendo" -x incluye procesos no relacionados con la terminal en la que se tecleo el comando Ejemplo: rogomez@armagnac:233>ps -agx PID TT STAT TIME COMMAND 0 ? D 0:07 swapper 1 ? IW 0:00 /sbin/init 2 ? D 0:02 pagedaemon 51 ? S 0:05 portmap 1786 co S 0:05 xclock -digital -geometry +675 +-2 2242 p0 S 0:02 xvile ejecuta.c 2331 p0 R 0:00 ps -agx 2139 p4 IW 0:00 telnet sunlab rogomez@armagnac:234> Nota: El comando kill numero-proceso permite "matar", o terminar, con la ejecucion de un proceso 6.6 El comando uname Descripcion: sirve para la identi cacion del sistema. Despliega informacion acerca del sistema sobre el cual se esta trabajando. Si no se especi ca ninguna opcion, imprime el nombre del sistema Sintaxis: uname -mnrsva] Opciones: -m imprime el nombre de la maquina -n imprime el nombre del nodo, el cual es utilizado para comunicaciones a traves de una red 22
  • 23. -r imprime la referencia de liberacion, (release) del sistema operativo -s imprime el nombre del sistema -v imprime la version del sistema operativo -a imprime toda la informacion anterior Ejemplo: rogomez@armagnac:233>uname -a SunOS mexico 4.1.3_U1 2 sun4c rogomez@armagnac:234> 6.7 El comando tty Descripcion: permite la identi cacion de la terminal. Regresa el nombre de la terminal del usuario. Sintaxis: tty -l ] -s] ... Opciones: -l imprime numero l nea asincronico a la cual la terminal del usuario esta conectado -s imprime todos los parametros en hexadecimal Ejemplo rogomez@armagnac:38>tty /dev/pts/6 rogomez@armagnac:39> Notas: Nombre usuado es el equivalente al regresado por la funcion ttyname() 6.8 El comando date Descripcion: despliega la fecha y la hora Sintaxis: date -u] format] + Opciones: -u despliega en modo GMT (Greenwich Mean Time) saltandose el formato local. +format la impresion del comando puede ser reformateada para que se entienda mejor. Ejemplo: rogomez@armagnac:39> date Fri Mar 12 19:59:08 CST 1999 rogomez@armagnac:40> date '+DATE: %d-%n-10%y%nHEURE: %H:%M:%S' DATE: 10-10-1988 HEURE: 16:01:47 rogomez@armagnac:41> 6.9 El comando who Descripcion: despliega los usuarios conectados. Sintaxis: who 23
  • 24. Ejemplo: rogomez@armagnac:41>who rogomez console Oct 10 09:48 rogomez ttyp0 Oct 10 11:18 mimoso ttyp1 Oct 10 12:54 rogomez@armagnac:42> Nota: Una variante es whoami que despliega informacion correspondiente a la persona conectada a la terminal donde se tecleo ese comando. 7 Los programas en red Con las versiones BSD4.x de Unix el acceso a una red local es posible. El objetivo es que el usuario pueda acceder una maquina a partir de otra, con el n de transferir datos a una gran velocidad. Las principales aplicaciones son: Transferir archivos Tener una terminal virtual Ejecucion, sobre una maquina, de programas a distancia A continuacion se describen los principales protocolos/comandos usados en maquinas Unix co- nectadas por una red local. 7.1 El protocolo telnet Permite conectarse a otro sistema (no necesariamente Unix ) y dialogar con ese sistema como si tuvieramos una terminal conectada directamente a el. La sintaxis del protoccolo es: telnet host ] Una vez conectados, y despues de presionar las teclas <crtl> <]> , se pasa al modo comandos de telnet. Este modo permite enviar caracteres especiales al sistema distante, de cerrar la conexion, de abrir una nueva, o de salirse de telnet Los principales comandos bajo este modo son: ? lista los comandos de telnet open abre una conexion close cierra la conexion en curso quit sale de telnet, cerrando la conexion send car env a un caracter especial al sitio distante send ? lista los cracteres especiales y su efecto 7.2 El protocolo ftp ( le transfer protocol) Permite conectarse a otro sistema distante, con el n de transferir archivos. Es posible hacerlo en ambos sentidos, ya sea dejar archivos en la maquina remota o traerse archivos de la maquina remota. Permite conectarse a computadoras que manejan un sistema diferente a Unix. ftp host ] Los principales comandos de ftp son: 24
  • 25. ? lista los comandos de ftp ! lanza un shell sobre el sistema local bye termina la sesion ftp cd direc cambiar directorio en sistema distante lcd direc cambiar de directorio en sistema local put arch env a el archivo arch1, que se llamara arch2 en el sistema distante. Un sinonimo de put es send get arch1 recibe el archivo arch1, que se llamara arch2 en el sistema local. Un sinonimo de get es recv mget utilizado para recibir archivos utlizando el metacaracter * mput permite enviar y recibir archivos utilizando el metacaracter *. Los archivos conservaran su mismo nombre en ambos sistemas prompt elimina la opcion de pregunta interactiva de mget y mput 7.3 Los comandos r Este es un conjunto de comandos que permiten realizar cierto tipo de operaciones remotas entre dos maquinas que esten ejecutando un sistema operativo Unix. Con el n de protegerse de posibles ejecuciones no deseadas, si el usuario toto de la maquina A desea ejecutar un comando en la maquina B se deben cumplir las siguientes condiciones: El usuario toto debe de tener una cuenta en la maquina B. Normalmente se tiene el mismo nombre de cuenta en ambas maquinas (toto) El archivo /etc/host.equiv de la maquina B debe tener una entrada para A o en su defecto el directorio hogar3 de toto debe contener un archivo llamada .rhosts que contenga una entrada para tequila. En muchos sistemas el archivo .rhosts es creado con una sola entrada, un caracter + lo cual le otorga permiso a todo mundo de hacer lo que sea en la maquina. Se recomienda eliminar dicho archivo o revisar periodicamente su contenido para evitar otorgarle permisos innecesarios a personas desconocidas o no deseadas. Existen varios comandos que funcionan bajo este contexto, a continuacion se explicaran los mas importantes de ellos. 7.3.1 EL rlogin (remote login) Permite conectarse a otro sistema Unix, de la misma forma que telnet . Su sintaxis es: rlogin -l nombre ] host Si no se utiliza la opcion -l, rlogin conectara al usuario a la maquina distante con el mismo nombre que tiene en la maquina local. Los valores de las variables de ambiente USER y TERM son pasadas al programa login de la computadora distante. Las peticiones de rlogin pueden estar precedidas del caracter ~ (tilde) y solo son efectivas si son el primer caracter de una l nea, (despues de un <RETURN>): 3directorio en el cual el usuario es posicionado cuando entra por primera vez al sistema (conocido tambien como directorio HOME). 25
  • 26. ~. cierra la conexion ~<crl><z> suspende la conexion ~~ env a un ~ Este comando, como todos el resto de los comandos-r no funciona si alguna de las dos maquinas no trabaja bajo el sistema Unix. 7.3.2 El rsh (remote shell) Permite ejecutar un comando sobre otra maquina Unix. Los archivos de entrada/salida estandar estan asociados a la terminal, sin embargo no se aconseja utilizar rsh para ejecutar comandos inte- ractivos distantes. Su sintaxis es: rsh host -l usuario ] comando ] Si no se especi ca el comando, entonces el usuario se conectara al sistema distante como si hubiera tecleado un rlogin. Hay que tener cuidado con las redirecciones: rgomez@cognac>rsh amenti ls > res.txt crea un archivo res.txt local rgomez@cognac>rsh amenti "ls > res.txt" crea un archvio en la maquina amenti Si el usuario no tiene el archivo .rhosts entonces se le pedira su password. Lo mismo ocurre si en ese archivo no se le otorga la autorizacion de conexion a la maquina desde la cual se esta ejecutando el rsh. 7.3.3 El rcp (remote copy) Permite copiar archivos de una maquina a otra. Es imperativamente necesario tener un archivo .rhosts en la maquina distante que autorize al usuario a conectarse La sintaxis del copiado remoto es: rcp arch1 arch2 rcp -r ] archivo archivos ] directorio donde arch1 y arch2 pueden tomar la forma maquina:pathname. Esta forma signi ca que el archivo se encuentra en el camino de accesopathname, de la maquina. Lo mismo se aplica paralos argumentos directorio y archivo en la segunda sintaxis. La opcion -r permite especi car un directorio y de copiar recursivamente toda la sub-jerarqu a que se encuentra en ese directorio. Algunos ejemplos de este comando se presentan a continuacion: rogomez@svarga>rcp amenti: .login rogomez@svarga>rcp eden:bin/arch1 svarga:bin rogomez@svarga>rcp eden:bin/arch1 walhalla:bin/arch2 rogomez@svarga>rcp -r src empyree:src 26
  • 27. 8 Resumen comandos Unix La tabla de abajo presenta un resumen de los principales coandos Unix awk busca y procesa patrones en un archivo cat concatena o despliega archivos comm compara archivos buscados cp copia archivos cpio almacena y extrae archivos en un formato archival diff despliega las diferencias entre dos archivos find encuentra archivos grep busca patrones de caracteres en archivos head despliega el encabezado de un archivo ln crea una liga a un archivo lpr imprime archivos ls despliega informacion sobre archivos mkdir crea un directorio more despliega un archivo por pantalla mv renombra un archivo od vac a un archivo pr hace paginacion a un archivo rcp copia archivos desde o en una computadora remota rm remueve un archivo rmdir remueve un directorio sed editor stream sort busca y fusiona archivos spell checa errores ortogra cos en un archivo tail despliega la ultima parte de un archivo tar almacena o extrae archivos de un archivo archival uniq despliega l neas de un archivo que son unicas wc despliega numero de l neas, palabras y caracteres ftp trans ere archivos a traves de la red mail manda o recibe correo electronico mesg activa/desactiva la recepcion de mensajes telnet se conecta a una computadora remota a traves de la red write manda un mensaje a otro usuario cd cambia a otro directorio de trabajo chgrp cambia el grupo que esta asociado con un archivo chmod cambia el modo de acceso de un archivo chown cambia el propietario de una clase date despliega la fecha y la hora df despliega la cantidad disponible del disco duro du despliega informacion del uso del disco file despliega clasi cacion de archivos finger despliega informacion detallada de usuarios kill termina un proceso nice cambia la prioridad de un comando nohup corre un comando que se mantendra corriendo despues de salir del programa ps despliega status de procesos ruptime despliega el status de computadoras conectadas a la red rwho despliega nombres de usuarios de computadoras conectadas a la red 27
  • 28. sleep proceso que duerme por un intervalo espec co stty despliega o determina parametros terminales umask determina una mascara de permisos para la creacionn de archivos w despliega informacion de los usuarios del sistema who despliega nombres de usuarios cc compilador de C make guarda la concurrencia de los programas touch actualiza el tiempo de modi cacion de archivos admin crea o cambia las caracter sticas de un archivo SCCS ci crea o guarda cambios en un archivo RCS co extrae una version sin codi car de un archivo RCS delta guarda cambios en un archivo SCCS get crea una version sin codi car de un archivo SCCS prs imprime la historia de un archivo SCCS rcs crea o cambia las caracter sticas de un archivo RCS rlog imprime un sumario de la historia de un archivo RCS rmdel remueve un delta de un archivo SCCS at ejecuta un shell script a un determinado tiempo cal despliega un calendario calendar presenta recordatorios crontab programa un comando para que se corra a determinada hora echo despliega un mensaje expr evalua una expresion fsck checa y repara lesystems rlogin entra a una computadora remota tee copia la entrada estandar a la salida estandar y a uno o mas archivos tr reemplaza caracteres espec cos tty despliega el camino a la terminal 28