Autor: @jantoniorobledo
Hoy
vamos a ver dos cosas: como movernos en el árbol de directorios y otros comandos
útiles para manipularlos
Que es un directorio
Pues de forma básica es eso que conocemos en
Windows como carpeta (para mí siempre serán directorios a pesar de Microsoft J). En la Wikipedia podemos encontrar
esta definición de directorio:
“En informática,
un directorio es un contenedor virtual en el que se almacenan una agrupación de
archivos informáticos y otros subdirectorios, atendiendo a su contenido, a su
propósito o a cualquier criterio que decida el usuario. Técnicamente, el
directorio almacena información acerca de los archivos que contiene: como los
atributos de los archivos o dónde se encuentran físicamente en el dispositivo
de almacenamiento.”
En resumen, es una estructura jerárquica en
forma de árbol donde el elemento que está más “abajo” es el directorio raíz,
definido por el símbolo “/” y del que parten como ramas el resto de directorios.
De estos directorios parten, si los hay, los subdirectorios. La dirección
completa de un directorio se le denomina ruta, por ejemplo: “/home/miusuario/Documentos”
hace referencia al subdirectorio “Documentos” que se encuentra dentro del
subdirectorio “miusuario” que a su vez está dentro del directorio “home” que
parte del directorio raíz.
Si ejecutamos ls -la en el terminal de Linux veremos que lo primero que aparece en la lista
es algo así como dos directorios que se llaman “.” o “./” y “..” o “../”.
Son referencias o punteros al directorio
actual (.) y al directorio padre del actual (..). En el primer caso, si
queremos referirnos al directorio donde nos encontramos podemos hacerlo de la
siguiente manera: “/home/Ubuntu/Documentos/” o sencillamente con “./”.
Los dos puntos los usaremos para movernos o
referenciar al directorio anterior. Por ejemplo, para mostrar su contenido
ejecutaremos lo siguiente: ls -l ..
Comandos con directorios
pwd
Lo primero es saber dónde nos encontramos.
Saber dónde estamos es muy sencillo y hay dos formas:
1.
En el prompt de la consola aparece
la ruta actual:
2.
Ejecutamos el comando “pwd” y su
salida será la ruta actual:
tree
Existe una utilidad que nos permitirá ver muy
gráficamente la estructura completa de directorios: “tree”. Normalmente no está
instalada por defecto por lo que debemos ejecutar sudo apt install
tree para disponer de ella.
ls
Este comando fundamental nos muestra la lista
de ficheros, directorios, subdirectorios, etc. que se encuentran dentro de un
directorio.
Si lo ejecutamos “tal cual” nos mostrará una
lista columnada del contenido del directorio donde nos encontremos en ese
momento:
Hay algunos modificadores/parámetros muy
útiles que nos permitirán ver más información:
Parámetro
|
Uso
|
-l
|
Formato de lista larga. Muestra los
atributos, fecha de creación y tamaño además del nombre
|
-a
|
Muestra el contenido oculto (ficheros o directorios
cuyo nombre empieza con un punto “.”)
|
-h
|
Facilita la lectura de los tamaños de
archivos mostrándolo en unidades (ejemplos: 1K, 32M, 2.1G)
|
-r
|
Lista en orden inverso
|
-t
|
Ordena por fecha de modificación del archivo
|
-R
|
Lista recursivamente los directorios que existan como
hijos del actual
|
Por ejemplo, para listar los log del sistema
ordenados de forma inversa por antigüedad (abajo los más nuevos) ejecutaremos: ls
-ltr /var/log/*.log
Esto nos permite localizar rápidamente el
últimos o últimos log modificados.
Si queremos mostrar todo el contenido de un
directorio, incluidos ficheros ocultos ejecutaremos: ls
-la
Como podéis ver, estamos agrupando distintos
parámetros después de un único guion “-“, es decir ls -l -a es exactamente lo mismo que ls
-la.
También disponemos en la mayoría de las
distribuciones definidos unos alias, que no son más que nombres de pseudo-comandos
que cuando los invocamos realmente ejecutan el comando que tengan definido en
el alias. Por ejemplo: alias l=’ls -CF’. Esto significa que si ejecutamos “l”
es como si hubiéramos ejecutado “ls -CF”.
Normalmente tendremos los siguientes alias
creados:
·
alias ls='ls --color=auto'
·
alias ll='ls -alF'
·
alias la='ls -A'
·
alias l='ls -CF'
Siempre podremos personalizarlos editando el
fichero “.bashrc” en nuestro home.
cd
El comando “cd” (del inglés change directory)
es el que usaremos para hacer precisamente eso: cambiar de directorio. Es un
comando tan básico del sistema que está incluido en las Shell, no es un
ejecutable binario como muchos otros comandos que solemos ejecutar. Su
funcionamiento es muy sencillo: solo debemos teclear el comando y como único parámetro
el directorio al que queremos ir. Ejemplos:
cd /home/miusuario/Documentos
|
Nos moveremos al directorio /home/miusuario/Documentos
independientemente de donde estemos en ese momento
|
cd ..
|
Nos movemos al directorio anterior o directorio padre
del que nos encontremos en ese momento. Suponiendo que en este momento
estemos en el directorio /home/miusuario/Documentos
nos moveremos al directorio /home/miusuario
|
cd ../..
|
Nos movemos dos directorios atrás en
la estructura. Suponiendo que estemos en /home/miusuario/Descargas
nos llevará a /home
|
cd .. /Descargas
|
Nos movemos a un subdirectorio paralelo al que nos
encontramos. Suponiendo que en este momento estemos en el directorio /home/miusuario/Documentos nos
moveremos al directorio /home/miusuario/Descargas
|
cd -
|
Nos moveremos al directorio que estuviéramos
anteriormente. Si lo ejecutamos después de la instrucción anterior nos
llevará de vuelta a /home/miusuario/Documentos
|
cd
|
Nos lleva al home o directorio de trabajo del usuario
|
mkdir
Con el comando mkdir (make directory) seguido
de un nombre crearemos un directorio con ese nombre siendo el padre el
directorio actual. En el siguiente ejemplo vemos como hemos creado un
subdirectorio llamado “otrodir” dentro del directorio “/home/ubuntu/Documentos”
y cómo podemos ver tanto con “ls” como con “tree” los cambios ocurridos:
rmdir
Este comando funciona de forma similar al
anterior con la importante diferencia que con rmdir (remove directory) vamos a
eliminar un directorio/subdirectorio. En este ejemplo vemos como eliminamos el
directorio creado anteriormente y como vemos los cambios con “ls” y con “tree”:
Es importante recordar esto: el directorio que
queramos eliminar debe de estar vacío tanto de otros subdirectorios como de
ficheros. En caso de que debamos eliminar una estructura completa tenemos un MUY PELIGROSO
COMANDO que hacer un borrado
recursivo incondicional que si ejecutamos en el lugar erróneo podemos
llevarnos por delante el sistema operativo. Para que veáis lo peligroso que es
no os lo voy a poner aquí…aunque os he dado suficientes pistas para que lo
encontréis J.
Resumiendo, tenemos los siguientes comandos
con los que debemos de familiarizarnos:
·
pwd: ¿dónde estoy?
·
tree: para ver la estructura del árbol de
directorios
·
ls: para ver el contenido de un directorio
·
cd: para moverme por el árbol de directorios
·
mkdir: para crear un directorio
·
rmdir: para eliminar un directorio
-->
En la próxima entrega veremos algunos
directorios de la estructura de Linux que debemos de conocer por su importancia
y que nos encontraremos allí.
No hay comentarios:
Publicar un comentario