Skip to content

Archivos y directorios ​

Los sistemas operativos organizan la información mediante archivos y directorios.

Aunque habitualmente podemos gestionarlos utilizando un explorador de archivos, en entornos profesionales es frecuente trabajar también desde la terminal, especialmente al administrar sistemas, utilizar servidores o trabajar con herramientas de desarrollo.

Durante esta unidad utilizaremos la terminal para crear y organizar los archivos que posteriormente formarán parte de nuestros proyectos de documentación.

La terminal ​

La terminal proporciona una interfaz de línea de comandos que permite interactuar con el sistema operativo mediante instrucciones escritas.

En Ubuntu podemos abrir una terminal utilizando el atajo:

text
Ctrl + Alt + T

La terminal muestra un prompt que indica que está preparada para recibir comandos. Su aspecto puede variar según la configuración del sistema.

Por ejemplo:

text
student@ubuntu:~$

A continuación podemos escribir un comando y pulsar Enter para ejecutarlo.

Por ejemplo:

bash
pwd

TIP

Durante el módulo no será necesario memorizar todos los comandos y sus opciones.

Debemos aprender a identificar qué operación necesitamos realizar, localizar la documentación correspondiente y utilizar correctamente el comando adecuado.

Directorio de trabajo ​

Cuando utilizamos la terminal siempre nos encontramos situados en un determinado directorio, denominado directorio de trabajo actual.

Podemos mostrar su ruta mediante:

bash
pwd

Por ejemplo:

text
/home/student

En los sistemas GNU/Linux, el directorio personal de un usuario se representa también mediante:

text
~

Por tanto, si el usuario es student:

text
~

representa:

text
/home/student

Contenido de un directorio ​

El comando ls permite mostrar el contenido de un directorio:

bash
ls

Podemos obtener información adicional utilizando opciones.

Por ejemplo:

bash
ls -l

muestra información detallada sobre los archivos y directorios.

La opción -a permite incluir también los elementos ocultos:

bash
ls -a

Las opciones pueden combinarse:

bash
ls -la

Archivos ocultos

En GNU/Linux, los archivos y directorios cuyo nombre comienza por . se consideran ocultos.

Por ejemplo:

text
.git

Más adelante encontraremos este directorio cuando trabajemos con Git.

Cambiar de directorio ​

El comando cd permite cambiar el directorio de trabajo.

Por ejemplo:

bash
cd Documents

Para acceder al directorio padre:

bash
cd ..

Para regresar directamente al directorio personal:

bash
cd ~

o simplemente:

bash
cd

Rutas absolutas y relativas ​

Para identificar un archivo o directorio podemos utilizar una ruta absoluta o una ruta relativa.

Una ruta absoluta comienza desde la raíz del sistema:

text
/home/student/Documents/project

Una ruta relativa se interpreta desde el directorio de trabajo actual:

text
Documents/project

También podemos utilizar:

text
.

para representar el directorio actual y:

text
..

para representar el directorio padre.

Por ejemplo:

bash
cd ../project

Crear directorios ​

El comando mkdir permite crear un directorio:

bash
mkdir docs

También podemos crear una estructura de directorios utilizando la opción -p:

bash
mkdir -p projects/documentation/images

Podemos comprobar el resultado mediante:

bash
ls

Crear archivos ​

Una forma sencilla de crear un archivo vacío desde la terminal es utilizar:

bash
touch README.md

Podemos comprobar que se ha creado mediante:

bash
ls

touch también permite actualizar las marcas de tiempo de un archivo existente, por lo que su función no se limita a crear archivos.

Copiar archivos y directorios ​

El comando cp permite copiar archivos.

Por ejemplo:

bash
cp README.md README-backup.md

También podemos copiar un archivo a otro directorio:

bash
cp README.md docs/

Para copiar un directorio junto con su contenido podemos utilizar la opción -r:

bash
cp -r docs docs-backup

Mover y renombrar ​

El comando mv permite mover archivos y directorios.

Por ejemplo:

bash
mv README.md docs/

El mismo comando se utiliza para cambiar el nombre de un archivo:

bash
mv notes.md installation.md

También podemos renombrar directorios:

bash
mv documentation docs

Eliminar archivos y directorios ​

El comando rm permite eliminar archivos:

bash
rm notes.md

Para eliminar un directorio y su contenido podemos utilizar:

bash
rm -r docs

Para eliminar un directorio vacío también podemos utilizar:

bash
rmdir docs

Eliminación de archivos

Los archivos eliminados mediante rm no se envían normalmente a la papelera.

Antes de ejecutar el comando debemos comprobar cuidadosamente qué archivos o directorios vamos a eliminar.

Debemos prestar especial atención al utilizar opciones como -r.

Consultar el contenido de un archivo ​

Podemos mostrar el contenido completo de un archivo de texto mediante:

bash
cat README.md

Para archivos más largos podemos utilizar:

bash
less README.md

less permite desplazarnos por el documento. Podemos salir pulsando:

text
q

Autocompletado ​

La terminal permite completar nombres de comandos, archivos y directorios utilizando la tecla Tab.

Por ejemplo, si existe el directorio:

text
documentation

podemos comenzar escribiendo:

bash
cd doc

y pulsar Tab.

Si el nombre puede determinarse de forma inequívoca, la terminal lo completará automáticamente.

El autocompletado permite trabajar más rápidamente y reducir errores al escribir rutas.

Historial de comandos ​

La terminal mantiene un historial de los comandos ejecutados.

Podemos recuperar comandos anteriores utilizando las teclas:

text
↑
↓

También podemos consultar el historial mediante:

bash
history

Esto resulta útil cuando necesitamos repetir o modificar un comando utilizado anteriormente.

Obtener ayuda ​

Cuando necesitemos conocer el funcionamiento de un comando podemos consultar su manual:

bash
man ls

o utilizar su ayuda:

bash
ls --help

No debemos intentar memorizar todas las opciones disponibles. Debemos ser capaces de consultar la documentación cuando necesitemos realizar una operación concreta.

Preparación de un proyecto ​

El trabajo con archivos y directorios desde la terminal será la base para utilizar posteriormente Visual Studio Code, Git y GitHub.

Por ejemplo, podemos preparar un nuevo proyecto mediante:

bash
mkdir technical-documentation
cd technical-documentation
touch README.md
mkdir images

La estructura resultante será:

text
technical-documentation/
├── images/
└── README.md

A partir de este momento podremos abrir este directorio con Visual Studio Code, crear la documentación en Markdown y, posteriormente, gestionar sus cambios utilizando Git.