Los archivos se utilizan para almacenar datos como texto, gráficos y programas. Los directorios (AKA, "carpetas") se utilizan para proporcionar una estructura de organización jerárquica. Esta estructura es algo diferente de lo que podría estar acostumbrado a si ha trabajado previamente en sistemas Microsoft Windows.
En un sistema Windows, el nivel superior de la estructura de directorios se denomina Mi PC. Cada dispositivo físico (unidad de disco duro, unidad de DVD, unidad flash USB, unidad de red, etc.) aparece en Mi PC, cada uno asignado una letra de unidad, como C: o D :. Una representación visual de esta estructura:
Al igual que Windows, una estructura de directorios de Linux tiene un nivel superior, sin embargo, no se llama Mi PC, sino el directorio raíz y está simbolizado por el carácter /. También no hay unidades en Linux; Cada dispositivo físico es accesible bajo un directorio, no una letra de unidad. Una representación visual de una estructura típica de directorios de Linux:
Esta estructura de directorio es llamada el sistema de archivos por la mayoría de los usuarios de Linux.
Para ver el sistema de archivos raíz, escriba ls /:
sysadmin@localhost:~$ ls / bin dev home lib media opt root sbin selinux sys usr boot etc init lib64 mnt proc run sbin??? srv tmp var
Ruta de directorio
Usando el gráfico en la sección anterior como un punto de referencia, verá que hay un directorio llamado sound bajo un directorio llamado etc, que está en el directorio /. Una manera más fácil de decir esto, es referirse a la ruta.
Una ruta le permite especificar la ubicación exacta de un directorio. Para el directorio de sonido, la ruta sería /etc/sound. El primer carácter / representa el directorio raíz(root), mientras que cada carácter / se utiliza para separar los nombres de directorio.
Este tipo de ruta se denomina ruta absoluta. Con una ruta absoluta, siempre proporciona direcciones a un directorio (o un archivo) a partir de la parte superior de la estructura de directorios, el directorio raíz. Más adelante, se cubrirá un camino diferente llamado ruta relativa.
El siguiente gráfico muestra tres rutas absolutas adicionales:
Directorio Home
El directorio de inicio del término a menudo causa confusión a los usuarios principiantes de Linux. Para empezar, en la mayoría de las distribuciones de Linux hay un directorio llamado home bajo el directorio raíz: /home.
En este directorio /home habrá un directorio para cada usuario en el sistema. El nombre del directorio será el mismo que el nombre del usuario, por lo que un usuario llamado "bob" tendría un directorio home llamado /home/bob.
Su directorio home es un directorio muy importante. Para empezar, cuando abra un shell, debe colocarse automáticamente en su directorio de inicio, ya que aquí es donde va a hacer la mayor parte de su trabajo.
Además, su directorio de inicio es uno de los pocos directorios donde tiene el control total para crear y eliminar archivos y directorios adicionales. La mayoría de los otros directorios de un sistema de archivos Linux están protegidos con permisos de archivo, un tema que se tratará en detalle en un capítulo posterior.
En la mayoría de las distribuciones de Linux, los únicos usuarios que pueden acceder a los archivos de su directorio principal son usted y el administrador del sistema (el usuario root). Esto se puede cambiar utilizando permisos de archivo.
Su directorio home tiene incluso un símbolo especial que puede utilizar para representarlo: ~. Si su directorio home es /home/sysadmin, simplemente puede escribir ~ en la línea de comandos en lugar de /home/sysadmin. También puede referirse al directorio de inicio de otro usuario utilizando la notación ~user, donde user es el nombre de la cuenta de usuario cuyo directorio home al que desea hacer referencia. Por ejemplo, ~bob sería el mismo que /home/bob. Aquí, vamos a cambiar al directorio de inicio del usuario:
sysadmin@localhost:~$ cd ~ sysadmin@localhost:~$ ls Desktop Documents Downloads Music Pictures Public Templates Videos sysadmin@localhost:~$
Directorio actual
Su directorio actual es el directorio donde está trabajando actualmente en un terminal. Cuando abre un terminal por primera vez, el directorio actual debe ser su directorio personal, pero esto puede cambiar a medida que explora el sistema de archivos y cambia a otros directorios.
Mientras esté en un entorno de línea de comandos, puede determinar el directorio actual mediante el comando pwd:
sysadmin@localhost:~$ pwd /home/sysadmin sysadmin@localhost:~$
Cambio de directorios
Si desea cambiar a un directorio diferente, utilice el comando cd (cambiar directorio). Por ejemplo, el siguiente comando cambiará el directorio actual a un directorio llamado /etc/sound/events:
sysadmin@localhost:~$ cd /etc/sound/events sysadmin@localhost:/etc/sound/events$
Tenga en cuenta que no hay salida si el comando cd tiene éxito.Si intenta cambiar a un directorio que no existe, recibirá un mensaje de error:
sysadmin@localhost:/etc/sound/events$ cd /etc/junk -bash: cd: /etc/junk: No such file or directory sysadmin@localhost:/etc/sound/events$
Si desea volver a su directorio de inicio, puede escribir el comando cd sin argumentos o utilizar el comando cd con el carácter ~ como argumento:
sysadmin@localhost:/etc/sound/events$ cd sysadmin@localhost:~$ pwd /home/sysadmin sysadmin@localhost:~$ cd /etc sysadmin@localhost:/etc$ cd ~ sysadmin@localhost:~$ pwd /home/sysadmin sysadmin@localhost:~$
Nombres de ruta absolutos vs. relativos
Recuerde que una ruta de acceso es esencialmente una descripción de dónde se encuentra un archivo o directorio en el sistema de archivos. También puede considerar una ruta de acceso como direcciones que indican al sistema dónde encontrar un archivo o directorio. Por ejemplo, el comando cd /etc/perl/Net significa "cambiar al directorio Net, que encontrará en el directorio perl, que encontrará en el directorio etc, que encontrará en el directorio /".
sysadmin@localhost:~$ cd /etc/perl/Net sysadmin@localhost:/etc/perl/Net$
Sin embargo, ¿qué pasaría si estuviera en el directorio /etc/perl y quisiera ir al directorio /etc/perl/Net? Sería tedioso para escribir el camino completo para llegar a un directorio que es sólo un nivel por debajo de su ubicación actual. En una situación como esta, desea utilizar una ruta relativa:
sysadmin@localhost:/etc/perl$ cd Net sysadmin@localhost:/etc/perl/Net$
Una ruta relativa proporciona direcciones utilizando su ubicación actual como punto de referencia. Recuerde que esto es diferente de rutas absolutas, que siempre requieren que utilice el directorio raíz como un punto de referencia.
Hay una práctica técnica de ruta relativa que puede utilizar para subir un nivel en la estructura de directorios: el directorio .. Independientemente del directorio en el que se encuentre, .. siempre representa un directorio más alto que su directorio actual (con la excepción de cuando se encuentra en el directorio /):
sysadmin@localhost:/etc/perl/Net$ pwd /etc/perl/Net sysadmin@localhost:/etc/perl/Net$ cd .. sysadmin@localhost:/etc/perl$ pwd /etc/perl sysadmin@localhost:/etc/perl$
Mientras que el doble punto (..) se utiliza para referirse al directorio por encima del directorio actual, el punto único (.) Se utiliza para referirse al directorio actual. Sería inútil que un administrador se mueva al directorio actual escribiendo cd . (Aunque en realidad funciona). Es más útil referirse a un elemento del directorio actual utilizando la anotación ./ Por ejemplo:
sysadmin@localhost:~$ pwd /home/sysadmin sysadmin@localhost:~$ cd ./Downloads/ sysadmin@localhost:~/Downloads$ pwd /home/sysadmin/Downloads sysadmin@localhost:~/Downloads$ cd .. sysadmin@localhost:~$ pwd /home/sysadmin sysadmin@localhost:~$
Bibliografía
NDG Linux Essentials - Chapter 6 - Working with Files and Directories
No hay comentarios.:
Publicar un comentario