MANUAL DE UNIX
FICHEROS DEL SISTEMA UNIX


CUÁNDO SURGIÓ UNIX

   A principios de los años setenta, un equipo de científicos de los Laboratorios Bell, desarrolló un nuevo sistema operativo denominándolo UNIX Timesharing System (Sistema UNIX de tiempo compartido). Los Laboratorios Bell permitieron el reparto de copias de este sistema entre los universitarios para su empleo en la enseñanza y la investigación.

¿QUÉ ES UNIX?

    UNIX es un sistema operativo de tiempo compartido (la computadora puede ser usada por varios usuarios al mismo tiempo).

    Cada usuario de este sistema dispone de una pantalla y de un teclado (terminal), mientras que la información se procesa y almacena en la Unidad Central, que es de uso común a todos. Varios terminales conectados a una Unidad Central constituyen una red. De esta manera nos podremos intercomunicar con el resto de los usuarios.

    La persona responsable del control de la red es el Administrador del Sistema. Para poder tener acceso a la red, el Administrador, debe proporcionar a cada usuario un identificador (login) de entrada y una palabra de paso (password) que serán el indicativo de su número de cuenta.

    UNIX distingue las letras minúsculas de las mayúsculas; en DOS eran equivalentes. Cuando iniciamos una sesión en UNIX se nos pedirá que introduzcamos nuestro identificador y nuestra palabra de paso. Si los datos son correctos, aparecerá en pantalla un símbolo ($) llamado "prompt" que nos indica que hemos conseguido pasar la identificación y nos encontramos en nuestra cuenta de UNIX.

LOS PROGRAMAS UNIX

Los programas del sistema UNIX están funcionalmente clasificados de la siguiente forma:


TERMINALES Y SU UTILIZACIÓN

    La comunicación entre el sistema operativo UNIX y el usuario se realiza fundamentalmente a través de un terminal o consola (entrada-salida)

Caracteres de control: Además de la tecla RETURN, tenemos la tecla CONTROL
 

<CTRL> d Indica al proceso que se ha finalizado la entrada de caracteres. No hay más caracteres en la entrada
<CTRL> h Efecto de backspace. Se utiliza para la corrección de errores de tecleo
<CTRL> i Tabulador. Avanza el cursor de la pantalla hasta el próximo tabulador definido. En UNIX, la distancia entre tabuladores es de 8 espacios
<DELETE>, 
<RUBOUT>, 
<CTRL> c 
En muchos sistemas UNIX este carácter produce la finalización de un proceso sin esperar a su término
<BREAK> Esta tecla, dependiendo de cómo esté definido el terminal, produce efectos similares a la DELETE o RUBOUT

UNA SESIÓN DE TRABAJO CON UNIX

$ date solicita la fecha y la hora 
$ who quién usa el sistema 
$ mail introduciendo RETURN, presenta el siguiente mensaje
$ d se borra el mensaje
$ mail director
Mañana iré a buscar los periódicos del presidente.
envío del correo al director
CTRL d fin de correo al director
$ CTRL d salida del sistema

CORREO ENTRE USUARIOS

   El sistema operativo UNIX provee una forma de correo - comunicación entre usuarios, soportada por el comando mail.

    Se obtendrá el correo ejecutando el comando mail.

    Después de cada mensaje de correo mostrado por el comando, éste espera la acción que se va a desarrollar con el mismo.
 

d borra el correo visualizado
INTRO visualiza el siguiente mensaje pendiente

Otras posibilidades del comando mail son:
 

? p vuelve a visualizar el mensaje anterior
? s <nombre del fichero> almacena el mensaje en un fichero cuyo nombre le es dado
? q sale del comando mail y retorna a la Shell de UNIX

    En caso de que queramos enviar correo electrónico a otros usuarios, deberemos teclear el comando mail seguido del nombre del usuario al que se desea enviar. El cursor se posicionará al principio de la línea siguiente y ésta estará lista para la escritura del mensaje. El final de una línea se marca con INTRO y el mensaje continúa en la siguiente. Para finalizar el texto del mensaje, pulsaremos INTRO y CTRL-d, retornando a la Shell.

MANUAL ORIGINAL DEL SISTEMA UNIX

    A menudo el Manual original de UNIX está almacenado en el propio sistema y puede ser leído bajo el comando man seguido por el nombre del comando cuya sintaxis y descripción se desea.

$ man who

... visualización de la explicación detallada del comando

... who, sirviendo de ayuda al usuario.

    El sistema, asimismo, posee un comando que facilita el aprendizaje del sistema operativo, cuyo nombre es learn. Este comando incluye el estudio del sistema de ficheros, comandos básicos, editor ed del sistema, preparación de cartas y documentos e, incluso, lenguaje C.

LOS EDITORES ED y VI

    El editor ed es el más sencillo de los editores incorporados por el sistema operativo UNIX. Se trata de un editor de líneas.

    Para editar un fichero que se llama nombre

ed nombre

    El editor ed se utiliza en UNIX para mantener y modificar ficheros especiales y para modificar ficheros en modo no interactivo.

Para grabar un fichero sencillo, como
main ()
{
printf ("Hola, mundo\n");
}
procederíamos del siguiente modo:

    El signo $ corresponde al prompt de la Shell, e indica que está a la espera de recibir un nuevo comando. La línea "ed nombre.c" llama al editor para modificar el fichero "nombre.c", respondiendo "ed" con la línea "? nombre.c" para indicar que se trata de un nuevo fichero.

    La línea que contiene una "a" corresponde al comando "append" (añadir) del editor, indicando que se va a añadir texto al contenido del fichero "nombre.c". a continuación se introduce el texto hasta la aparición de una línea con un punto "." que indica al editor que finaliza la instrucción de texto y se pasa del "modo texto" al "modo comando", para seguir introduciendo comandos del editor.

    Finalmente se utilizan los comandos "w" (write) para grabar en disco el contenido del fichero, y "q" (quit) para finalizar la sesión de edición.

vi es tan sólo un programa editor y no resulta tan completo como pueda ser un tratamiento de textos como Wordstar.

La edición del fichero nombre.c mediante el editor vi sería

$ vi nombre.c
FICHEROS DEL SISTEMA UNIX

NOCIONES BÁSICAS SOBRE FICHEROS

    La mejor manera de conocer y profundizar en el sistema de ficheros UNIX es crear uno y efectuar sobre él una serie de procesos.

El fichero texto contiene 27 bytes.

Para visualizar el contenido del fichero, utilizaremos el comando cat

Mediante el comando od (octal dump) obtenemos una representación visible de todos los bytes que componen el fichero

Mediante la opción -c se interpretan los bytes como si fuesen caracteres.

La opción -x nos mostrará los bytes en números hexadecimales. Al final de cada una de las líneas del fichero "texto", aparece un carácter "\n" que representa el "final de línea" (newline) que el usuario ha definido mediante la tecla <RETURN>

LOCALIZACIÓN DE FICHEROS

    La mayoría de los comandos que vamos a explicar incluyen la posibilidad de especificar unos nombres de ficheros que se le pasan como argumentos al comando. Estos nombres de ficheros pueden ir explícitos, o sea, con su nombre completo, o definidos con una serie de caracteres especiales, que van a obligar a efectuar una búsqueda de ficheros, basándose en unas reglas que están especificadas en el núcleo del sistema.
 

? En cualquier posición indica que es válido cualquier carácter, pero sólo uno 
ej. nom.? 
     válidos "nom.<carácter>: "nom.a", "nom.p" 
     no son válidos "nombre", "nom.12" 
* Indica cualquier cadena de caracteres a partir de esta posición, incluso la cadena nula 
ej. pro.* 
     válidos "pro.<cadena>": "pro.c", "pro.programa" 
     no son válidos: "pr.12"
[abc] En la posición dada podrán existir los caracteres "a", "b" o "c" y, en general, cualquiera de los caracteres situados dentro de los corchetes. ej. fic.[123] válidos únicamente "fic.1", "fic.2", "fic.3"
[^123] Igual que la anterior, pero son válidos todos los caracteres excepto los contenidos dentro de los corchetes. 
ej. fic[^123] válidos todos los "fic.<carácter>, excepto los "fic.1", "fic.2", "fic.3" 
[a-b] En esta posición es válido cualquier carácter que esté alfabéticamente entre el carácter "a" y el carácter "b" 
ej. uno[a-d] válidos "unoa", "unob", "unoc" y "unod"
$ Fuerza a que los caracteres de la máscara estén al final del nombre del fichero. 

    Vamos a crear dos ficheros (siempre dentro del usuario de trabajo "prueba") mediante el comando ed:

    Recordemos que el contador de caracteres mostrado por el comando incluye el carácter fin de línea (newline), que es la forma que tiene el sistema de representar la digitación de la tecla RETURN

    El comando ls nos muestra la lista de los nombres de los ficheros que mantienen el usuario o el sistema, no el contenido de los mismos.

    Como muchos de los comandos de UNIX, ls posee opciones que pueden ser utilizadas para cambiar el modo de acción del mismo. Las opciones deben ir a continuación del nombre del comando y, normalmente, van precedidas del carácter "-".

    La opción -t produce una ordenación de los nombres de ficheros por la hora de la última modificación de los mismos. Los de cambio más reciente son colocados al principio.

    La opción -l produce una salida con información mucho más completa sobre los ficheros.

    El primer mensaje de salida ("total 2") nos indica el número total de bloques de disco utilizados para almacenar la información de los ficheros que han sido procesados por el comando. Un bloque está constituido por 512 ó 1024 caracteres.

    La cadena "-rw-r--r--" nos da la información de los permisos de acceso a los ficheros. En este caso, el propietario del fichero ("prueba") tiene permiso de lectura (r) y escritura (w), pero el resto de usuarios solamente tienen permiso de lectura.

    La siguiente información que observamos en la salida "1" es el número de enlaces (links) del fichero.

    La cadena "prueba" nos indica el nombre de usuario al que pertenece el fichero, es decir, el usuario que lo creó.

    La siguiente cadena de salida ("27" y "24") corresponde al número de caracteres que componen cada fichero (bytes) y que vemos que coincide con el obtenido con el comando ed en la creación de ambos ficheros.

    A continuación la fecha y la hora de la última modificación del fichero y, por último, el nombre del mismo.

    Las opciones del comando ls (así como las de muchos otros) pueden ir agrupadas, de tal forma que el comando ls -lt produce una salida con información completa de los ficheros y éstos ordenados por fecha-hora de la última modificación.

    La opción -u nos da información del momento del último uso del fichero (no cambio); -r produce la inversión del orden de salida de los ficheros procesados por el comando.

    Después de las opciones del comando ls podemos incluir uno o varios nombres de fichero, de tal forma que la información visualizada por el comando pertenecerá a la lista de ficheros dada:

    En caso de que no exista el fichero solicitado el comando nos muestra un mensaje de aviso.
 
ls [-ltasdru] <nombres de fichero>
-l lista en formato completo (largo) de información 
-t lista por orden de fecha-hora de última modificación (primero lo más recientes)
-a lista todos los ficheros incluyendo directorios
-s visualiza el tamaño de los ficheros en bloques. 
1 bloque = 512 caracteres (bytes)
-d informa sobre la situación de directorios
-r lista en orden inverso al normal
-u lista por orden de fecha-hora de última utilización de los ficheros. Primero el más reciente.
    Vemos en la opción -a que nos aparecen tres ficheros "extraños". El representado por "." nos indica el directorio actual en que nos encontramos. El ".." corresponde al directorio padre del actual, es decir, el directorio del que proviene o cuelga. Y el fichero ".profile" es uno de los ficheros "invisibles" del usuario; contiene una serie de parámetros importantes para el control del usuario.

    El comando ls no suele responder con mensajes de error, incluso en el caso de una digitación incorrecta de las opciones. Cuando no se le pasan argumentos de nombres de ficheros lista todos los ficheros del directorio actual. En caso de teclear la opción -l del comando, ésta imprime, entre otras informaciones, una lista de 10 caracteres, de los cuales el primero indica el tipo de fichero que se ha listado y los restantes 9 los permisos de acceso al mismo.

    Los tipos posibles de ficheros, indicados por el primer carácter de la cadena, son los siguientes:
 

d la entrada es un directorio
b la entrada es un fichero especial de tipo bloque
c la entrada es un fichero especial de tipo carácter 
- la entrada es un fichero de tipo ordinario

LISTADO DEL CONTENIDO DE UN FICHERO

    Existen numerosas formas para obtener o visualizar el contenido de un fichero. Una posibilidad es usar el editor del sistema ed

    Existen numerosos casos en que no es viable el uso de un editor para la visualización de la información almacenada en un fichero, por ejemplo, en el caso de que el tamaño del mismo sea superior al máximo procesado por el editor o que se desee la visualización de más de un fichero. Para estos casos existen varias alternativas.

    El comando cat es el más simple de todos los posibles para visualizar información de ficheros. Este comando lista el contenido de todos los ficheros que se le hayan pasado como argumentos.

    La salida del comando se producirá sin ningún tipo de pausa, por lo que si el contenido del fichero es grande, se deberá pulsar ctr-s para parar la salida y mantener la visualización que nos interesa.

    El comando cat sólo sirve para la visualización del contenido de ficheros que estén compuestos por caracteres ASCII o bien por caracteres que sean imprimibles.

    El comando cat puede visualizar un mensaje de error, indicando que no encuentra el fichero solicitado.

    En todos los sistema UNIX existe un comando que permite acomodar la salida a las características del terminal, de tal forma que nos permita la visualización del contenido por páginas. El nombre del comando depende del sistema y puede ser page, pg o more.

    Existe otro comando, de nombre pr, que lista el contenido de uno o varios ficheros, acomodándose a las características de las impresoras del sistema. Es decir, lista páginas de 66 líneas con la fecha y la hora de la última modificación del fichero, numera las páginas y coloca el nombre del fichero en el principio de cada una. Entre cada uno de los ficheros a listar efectúa un salto de página, de tal forma que cada fichero comienza al principio de una página.

    Mediante este comando se puede producir una salida en multicolumnas o en paralelo. Por ejemplo, pr -3 fich.1 fich.2 fichero efectúa una salida en formato de tres columnas.

La opción -m asigna la salida en columnas paralelas.

El comando pr no introduce ningún tipo de mensaje de error en caso de no encontrar los ficheros a imprimir o que se dirigen opciones incorrectas.
 

pr
Opciones:
-<n> la salida se imprime en formato de "n" columnas
+<n> imprime el fichero a partir de la línea "n" especificada, inclusive
-h <cadena> indica cambio de la cabecera. La <cadena> es ahora la cabecera de cada página
-w <n> la anchura de cada página del listado será de "n" caracteres, en lugar de 72, tomado por defecto
-l <n> cambia el número de líneas por página al valor "n", en vez de 66 líneas tomadas por defecto
-t el listado evita (salta) las 5 líneas de cabecera y de fin de página
-s <carácter> en vez de separar las columnas por el carácter de tabulación, éstas son separadas por el carácter especificado en <carácter>
-m imprime todos los ficheros especificados en columnas paralelas y simultáneamente

RENOMBRADO, COPIA Y BORRADO DE FICHEROS

*    Para cambiar el nombre de un determinado fichero, se utiliza el comando mv y su sintaxis es
 

mv <nombre antiguo> <nombre nuevo>
Cambia el nombre de un fichero
*    Para efectuar copias de ficheros, es decir, proceder a una duplicación de los mismos con nombres distintos, existe el comando cp, que no hace sino mantener varias versiones de un determinado fichero: El comando cp avisa en caso de no encontrar el fichero que va a ser copiado.
 
cp <archivo> <archivo>
Copia ficheros

*    El comando empleado para borrar ficheros es rm. Su sintaxis es:
 

rm <lista de ficheros>
Borrar ficheros
    Hay que tener en cuenta con los ficheros que se van a borrar, puesto que el comando rm no solicita la conformidad para tal borrado. Existe una opción del comando, de nombre -i, que solicita interactivamente la conformidad para cada uno de los ficheros de la lista de argumentos del comando. Esta opción debe usarse cuando no se sepa exactamente la lista de ficheros a borrar, por utilizar caracteres de máscara. El borrado de ficheros se realiza en "modo silencioso", es decir, no se visualiza ningún tipo de mensaje que avisa de que el borrado ha sido ejecutado.
 
rm [-rif ] <ficheros>
-f serán borrados también aquellos ficheros protegidos contra escritura
-r borra recursivamente todos los ficheros de un directorio e incluso el propio directorio
-y solicita confirmación para el borrado de cada fichero digitado.

NORMAS ADICIONALES SOBRE NOMBRES DE FICHEROS

    La longitud máxima del nombre de un fichero es de 14 caracteres. Si sobrepasamos esa longitud el sistema trunca el nombre a los catorce primeros caracteres.

    Se aconseja además que sólo sean usados caracteres alfabéticos, numéricos y los símbolos "." (punto) y "_" (subrayado) en la composición de los nombres de ficheros.

COMANDOS DE PROCESAMIENTO DE FICHEROS

Para la discusión de los mismos, creemos el siguiente fichero:

*    El comando wc (wc rd counter) cuenta el número de líneas, palabras y caracteres que componen uno o más ficheros. El fichero "poema" contiene 5 líneas, 22 palabras y 119 caracteres.

En caso de que al comando wc se le pase como argumentos una lista de ficheros (más de uno), nos listará la cuenta para cada uno de los ficheros de la lista, así como el número total de caracteres, palabras y líneas en la totalidad de los mismos:

wc [-lwc] <ficheros>
-l cuenta únicamente las líneas del fichero
-w cuenta únicamente las palabras del fichero
-c cuenta únicamente los caracteres del fichero

*    El comando grep se encarga de buscar dentro de los ficheros que se le pasan como argumentos las líneas que contengan una cadena determinada que se le da al comando como parámetro.

Las opciones son las siguientes:
 
grep <opciones> <cadena><ficheros>
-v muestra todas las líneas excepto las que contienen la <cadena> dada
-c muestra todas las líneas que contienen la <cadena> digitada
-l muestra los nombres de los ficheros que contienen la <cadena> digitada
-n aparte de mostrar las líneas visualiza el número de línea
-h no visualiza el nombre de los ficheros
-y da igual tratamiento a las mayúsculas y a las minúsculas
-e permite comenzar la <cadena> por el carácter "-"

*    El comando sort ejecuta una clasificación de las líneas del fichero de entrada por orden semialfabético. Es decir, para clasificar dos líneas, compara el primer carácter de cada una, si son iguales al segundo, y así hasta que exista una diferencia que permita establecer la clasificación entre ambas.

    La clasificación es línea a línea. El orden natural de clasificación incluye antes los blancos, después las letras mayúsculas y, por último, las minúsculas, por lo que no es exactamente una clasificación alfabética. Las opciones del comando son:
 
sort <opciones> <ficheros>
-r invierte el orden normal de clasificación
-n clasifica en orden numérico
-nr clasifica en orden numérico inverso
-f considera igual las mayúsculas y minúsculas
+n comienza a clasificar en el campo n+1

* El comando tail visualiza las últimas diez líneas de un fichero.
 

tail [+-] <opciones> <fichero>
+ indica comienzo de listado a partir de la <n> línea del fichero, inclusive
- indica el comienzo de listado a partir de <n> líneas del fin del fichero
Opciones:
l el número <n> se refiere a líneas. Esta opción es por defecto
b el número <n> se refiere a caracteres
b el número <n> se refiere a bloques de ficheros (grupos de 512 caracteres)

*    El comando cmp encuentra la primera línea en la que difieren dos ficheros y nos indica la posición primera de diferencia entre ambos:

    Vemos que entre los ficheros "poema" y "poema.dos" no existe mucha diferencia, sólo dos palabras (cañones y mal) son diferentes.     El comando cmp nos indica que los dos ficheros son idénticos hasta el carácter 12 de la primera línea. No nos dice las diferencias entre ambos, sino sólo que está en la primera línea. Este comando es muy interesante para casos en los que deseemos verificar la igualdad total entre dos ficheros.

*    El comando diff nos da información de las líneas que son distintas, las que faltan y las que sobran, en la comparación de ambos ficheros.

    El comando nos indica que la línea 1 del primer fichero ("poema") está cambiada respecto de la línea 1 del segundo ("poema.dos") e igualmente con la tercera.
 
diff [-fbhe] <fichero1> <fichero2>
-f la salida de las diferencias entre los dos ficheros se efectúa en orden inverso
-h localiza pequeñas diferencias, pero actúa de forma mucho más rápida y es muy conveniente en grandes ficheros. 
No es compatible con ed
-b ignora los tabuladores y blancos de final de líneas, y trata como un solo blanco los repetitivos
-e admite las órdenes de añadir, borrar y modificar líneas, con los mismos comandos que el editor ed

    El comando cmp funciona con multitud de tipos de ficheros, mientras que el diff solamente funciona con ficheros del tipo texto. El comando diff se usará cuando se deseen conocer las diferencias exactas entre dos ficheros. Evidentemente, es más rápido el comando cmp, pues sólo busca la primera diferencia.

DIRECTORIOS

    Cada usuario del sistema (definido entre otras cosas por su nombre) tiene un directorio particular, denominado directorio de usuario o directorio corriente. El usuario puede estar trabajando en otro directorio, pero siempre poseerá el suyo propio.

    El comando básico de localización del directorio actual en el que el usuario está trabajando se denomina pwd.

    El comando visualiza el directorio actual de trabajo, que coincide con el directorio del usuario "pruebas"- El directorio del usuario es un directorio dentro del directorio usr, que a su vez es un directorio del directorio base del árbol, denominado root (raíz) y que se representa por "/". Este carácter se usa como separador de los directorios y ficheros del árbol. También existe la limitación de 14 caracteres para el nombre de un directorio. En casi todos los sistemas UNIX, los usuarios del mismo cuelgan del árbol en la forma /usr.

    Un fichero queda representado por el camino que éste recorre dentro del árbol del sistema, desde la raíz del mismo (root). Este camino se denomina en UNIX pathname y su significado es el recorrido que se debe hacer en el árbol del sistema para localizar el fichero, partiendo desde la base (root) del árbol. Es norma universal de UNIX el poder representar un fichero por su camino o "pathname"

    Hemos efectuado la copia de un fichero del usuario "director" sobre el fichero "datos" en el directorio donde el usuario está trabajando (normalmente usr/pruebas).

PERMISOS DE ACCESO A FICHEROS

    Cada uno de los ficheros residentes en el sistema posee un conjunto de permisos de acceso para los usuarios del mismo. El usuario puede cambiar los permisos de acceso a "sus" ficheros, de tal forma que proteja la información de alguna manera.

    Existe un súper usuario del sistema, que puede volver a cambiarnos nuestros permisos, de tal forma que desproteja y tenga acceso a nuestra información.

    El sistema reconoce a cada usuario por un cierto número que se le asigna a la hora de su creación. El nombre del usuario no es más que un identificador para el sistema y una especie de clave de acceso al mismo. Debido a esto, varios nombres de usuarios distintos pueden tener el mismo número identificador. Esta situación no es nada segura dentro de un sistema y el administrador del mismo se encargará de controlarla. Cada usuario, además de su número de identificación, posee un número identificador del grupo al que pertenece. En muchos de los sistemas UNIX el grupo de todos los usuarios del sistema recibe el nombre de other. Toda la información referente a los parámetros de los grupos y usuarios del sistema se encuentra en un fichero localizado en el pathname /etc/passwd.
 

Existen tres tipos de permisos de acceso a un fichero del sistema:
read r lectura
write w escritura
execute x ejecución

    La opción -l del comando ls nos muestra los permisos de acceso que posee el fichero que se visualiza:

    La opción -l del primer comando nos informa del nombre del propietario o usuario del fichero, que corresponde al nombre de usuario root. La opción -g nos muestra el nombre del grupo del fichero, en este caso adm.

    La cadena -rw-r--r-- nos da información acerca de los permisos de los ficheros.

    El primer carácter de la cadena (-) indica el tipo de fichero de que se trata; en este caso, un fichero ordinario.

    En caso de ser un subdirectorio aparecería el carácter "d".

    Los siguientes tres caracteres de la cadena indican los accesos autorizados del fichero para el propio usuario del mismo.

    Las tres siguientes son para el grupo de usuarios al que pertenece el propio usuario creador del fichero y las tres últimas posiciones corresponden a los accesos para el resto de usuarios del sistema.
 

- Indica que NO hay permiso para acceder al fichero
r Se permite acceso de lectura al fichero
w Se permite acceso de escritura al fichero
x se permite la ejecución del fichero. Contiene un proceso ejecutable por el sistema
Cadena de permisos de acceso "tabcdefghi" (posiciones 1234567890)
t (posición 1) tipo de fichero: 
 - ordinario 
 d directorio
a (posición 2) lectura para el usuario: 
 - no permitida 
 r permitida
b (posición 3) escritura para el usuario: 
 - no permitida 
 w permitida 
c (posición 4) ejecución para el usuario: 
 - no permitida 
 x permitida
d (posición 5) lectura para el grupo de usuarios
e (posición 6) escritura para el grupo de usuarios
f (posición 7) ejecución para el grupo de usuarios
g (posición 8) lectura para el resto de usuarios
h (posición 9) escritura para el resto de usuarios
i (posición 0) ejecución para el resto de usuarios.

Ejemplos:
 

-rw-r--r-- Fichero ordinario. 
    Permitida lectura y escritura al usuario del fichero. 
    Permitida lectura al grupo y resto de usuarios 
    No permitida ejecución a ningún usuario del sistema.
-rwxr-xr-x Fichero ordinario 
    Permite lectura y ejecución a todos los usuarios, usuario propio, grupo y resto de usuarios. 
    Permitida escritura sólo al usuario del fichero. 
-rwxrwxr-x Fichero ordinario. 
    Permitida lectura y ejecución a todos los usuarios del sistema. 
    Permitida escritura al usuario y al grupo. 
    No permitida escritura al resto de usuarios. 

*    El comando cd posiciona al usuario en el directorio indicado:

cd cambia al directorio normal del usuario:

/usr/<nombre usuario>

cd <recorrido> cambia al directorio especificado por <recorrido>, que debe ser un camino (pathname) completo

cd <subdirectorio> cambia al subdirectorio indicado. No hace falta poner el recorrido completo. Debe ser un directorio dentro del actual en que se está

cd.. sube un nivel en la estructura (jerárquica) del árbol

cd. se mantiene en el directorio actual.

*    El comando mkdir crea los directorios dentro del directorio actual de trabajo del usuario. Para crear un directorio, se debe poseer permiso de escritura en el directorio donde se encuentre el usuario, es decir, en el directorio padre del que se va a crear.
 

mkdir <nombre de directorios>
Crea directorios

*    El comando rmdir permite el borrado de directorios. En caso de que un directorio contenga algún fichero o directorio, el comando rmdir no permitirá su borrado. La eliminación de un directorio, al igual que de un fichero, es aceptada por el comando si el usuario posee permiso de escritura en el mismo.
 

rmdir <nombre de directorios>
Borra directorios

BÚSQUEDA DE FICHEROS EN DIRECTORIOS

    Existe un comando UNIX que permite la búsqueda o localización de un fichero dentro del árbol de directorios. Su nombre en find. Las especificaciones que se pueden dar para la búsqueda del fichero incluyen posibilidades desde el nombre del fichero propietario del mismo, nombre del grupo de pertenencia, enlaces (links) e, incluso, fecha-día de última modificación o acceso al mismo.
 

find <directorios> <condiciones de búsqueda>
busca a partir de los directorios especificados los ficheros que cumplen las condiciones dadas. 
La lista de directorios debe estar separada por blancos o tabuladores, y efectúa la búsqueda a partir de esos directorios y su subdirectorios. 
Condiciones:
-name <ficheros> busca los ficheros especificados
-type [df] d: fichero tipo directorio 
f: fichero totalmente lleno
-links <n> busca ficheros con <n> enlaces
-user <usuario> busca los ficheros correspondientes al <usuario> especificado
-group <grupo> busca los ficheros correspondientes al grupo especificado
-size <n> busca ficheros con tamaño de <n> bloques (512 bytes)
-atime <n> busca ficheros en los cuales hace <n> días que se ha efectuado un acceso
-mtime <n> busca ficheros en los que hace <n> días se ha efectuado una modificación
-print imprime el camino de recorrido dentro del árbol de directorios del sistema

Ver la sección de LINUX donde figuran mas comandos


Página inicial: http://es.geocities.com/fisicas
Esta sección (desde la página inicial): INFORMÁTICA / UNIX
© Los autores: Mari Paz Hortelano Gómez e Iñaki Carrascal Mozo ©
Castrillo de Don Juan. Palencia. (España)
Correo electrónico: fisicas@yahoo.es
En la red desde el 15/03/1998 - Última modificación: 23/04/2000
1