viernes, 17 de agosto de 2012

El sistema de archivos: Conceptos basicos

Para hacer uso de cualquier sistema Linux, necesitas estar cómodo con los archivos y directorios. En un sistema de ventanas e íconos, los archivos y directorios son obvios a la vista. Con un sistema de línea de comandos como el Shell de Linux, los mismos archivos y directorios están presentes pero no visibles constantemente, por lo que a veces es necesario recordar en cuál directorio te encuentras y cómo este se relaciona con otros directorios. Para eso usamos comandos como cd y pwd para movernos entre directorios y mantener una bitácora de dónde nos encontramos.


Veamos algunas terminologías. Como sabemos, los archivos o ficheros en Linux están contenidos en directorios. Los directorios de una jerarquía o árbol, como en la figura: Uno o varios directorios pueden contener otros directorios llamados sub-directorios, los cuales pueden contener otros archivos y directorios, y así sucesivamente, hasta el “infinito”. El directorio principal se denomina directorios raíz y es denotado por un slash o barra (/).

Nos referimos a archivos y directorios usando una sintaxis de nombres y barras llamada ruta. Por ejemplo, la ruta
/colores/verde/amarillo/azul

hace referencia al directorios raíz /, el cual contiene el directorios llamado colores, el cual contiene el directorio llamado verde, el cual contiene el directorio llamado amarillo, el cual contiene el directorio llamado azul. Si una ruta comienza con el direcotrio raíz, se denomina ruta absoluta, y si no, se denomina ruta relativa.



Siempre que estamos ejecutando un shell, ese shell está trabajando en algún directorio (en sentido abstracto). Lo que sucede es que el shell tiene un actual directorio de trabajo, y cuando ejecutamos comandos en ese shell, ellos operan relativamente en ese directorio. Más específicamente, si nos refermos a una ruta relativa en el shell actual, ésta es relativa al directorio de trabajo actual. Por ejemplo, si el shell se encuentra en el directorio /colores/verde/amarillo, y ejecutamos un comando que se refiere a un archivo de nombre archivo1, entonces el archivo es realmente /colores/verde/amarillo/archivo1. Igualmente,la ruta relativa a/b/c debe implicar la ruta absoluta /colores/verde/amarillo/a/b/c.

Dos directorios o carpetas se denotan: . (punto) y .. (dos puntos seguidos). El primero indica el directorio actual y el segundo el direcotorio padre, un nivel por encima. Por lo que si nuestro directorio actual es /uno/dos/tres, entonces . se refiere a este directorio y .. refiere a /uno/dos.

Nos movemos en el shell de un directorio a otro con el comando cd:
$ cd /one/two/three 

Este comando cambia el directorio de trabajo del shell a /one/two/three. Este es un cambio absoluto, ya que la ruta comienza con “/”; pero por supuesto podemos hacer movimientos relativos:
$ cd rojo         Entra al subdirectorio rojo
$ cd ../musica     Vamos arriba al directorio padre y luego al directorio musica

Los nombres de archivos y directorios contienen caracteres comunes: letras en mayúsculas y minúsculas, números, puntos, guinones, guines bajos, y la mayoría de los símbolos (excepto “/”, que está reservado para separar directorios). Sin embargo, para usos prácticos es bueno evitar espacios, asteriscos, paréntesis y otros caracteres que tienen un significado especial para el shell. De otro modo, tendremos que “escapar” o ignorar esos caracteres todo el tiempo, usando la barra invertida “\” delante.


Artículos relacionados



Widget by Hoctro | Jack Book

0 comments:

Publicar un comentario en la entrada