1.1 1.1 Entorno Linux, sistema de archivos y comandos esenciales de terminal

▶ Reproducir en la pizarra
Fundamentos del entorno Linux, sistema jerárquico de archivos y comandos estándar de la terminal para computación científica.
1

Arquitectura del árbol de directorios de Linux

En entornos de cálculo científico y nanotecnología, Linux estructura el almacenamiento en un árbol jerárquico unificado que nace en la raíz:

$$\text{Jerarquía: } / \longrightarrow \text{home} \longrightarrow \text{usuario} \longrightarrow \text{proyectos} $$
Ejemplo:

Para consultar la ruta absoluta en la que nos encontramos dentro del árbol, ejecutamos el comando pwd:

$$\text{pwd} \quad \longrightarrow \quad \text{/home/investigador/simulaciones} $$
2

Comandos esenciales de navegación y listado

La interacción con la terminal se basa en comandos estándar con opciones específicas:

$$\text{cd } \text{directorio} \quad \text{y} \quad \text{ls -la} $$
Ejemplo:

Para listar los archivos de una sesión experimental ordenados cronológicamente con sus permisos:

$$\text{ls -la /home/investigador/datos\_stm} $$
3

Rutas absolutas y rutas relativas

Una ruta absoluta comienza siempre en la raíz barra, mientras que una ruta relativa depende del directorio actual:

$$\text{.} \longrightarrow \text{directorio actual}, \quad \text{..} \longrightarrow \text{directorio padre} $$
Ejemplo:

Si estamos en la carpeta scripts y deseamos acceder al directorio hermano de datos sin usar la raíz:

$$\text{cd ../datos/muestras} $$
4

Manipulación determinista de archivos y directorios

La gestión de archivos se realiza con comandos directos que admiten modificadores recursivos:

$$\text{mkdir -p}, \quad \text{cp -r}, \quad \text{mv}, \quad \text{rm -i} $$
Ejemplo:

Para crear de forma segura una jerarquía completa de carpetas sin generar errores si ya existen:

$$\text{mkdir -p laboratorio/sesion\_01/calibraciones} $$
Ejemplo 1:

Configurar un espacio de trabajo para un proyecto de nanopartículas de oro con subcarpetas para scripts y datos brutos.

PASO 1

Creación de la jerarquía de directorios.

Creamos la estructura en un único comando empleando la opción recursiva:

$$\text{mkdir -p nano\_oro/scripts nano\_oro/datos\_raw} $$
PASO 2

Verificación de la estructura.

Accedemos a la carpeta raíz del proyecto y listamos el contenido para verificar la creación:

$$\text{cd nano\_oro && ls -l} $$
Conclusión

La creación con el modificador recursivo evita la repetición de llamadas y asegura la existencia de carpetas padre.

Ejemplo 2:

Navegación mediante rutas relativas entre directorios hermanos en un servidor de cálculo.

PASO 1

Identificación del directorio de origen.

Comprobamos el directorio actual de ejecución mediante el comando print working directory:

$$\text{pwd} \quad \longrightarrow \quad \text{/home/usuario/proyecto/scripts} $$
PASO 2

Desplazamiento relativo a la carpeta de calibración.

Utilizamos dos puntos para retroceder un nivel y descender al directorio de configuración:

$$\text{cd ../config/calibracion} $$
Conclusión

Las rutas relativas permiten que los scripts y comandos sean portables entre diferentes cuentas de usuario.

Ejemplo 3:

Duplicación de seguridad de un archivo de mediciones de espectroscopía Raman antes de su procesado.

PASO 1

Copia determinista del fichero bruto.

Generamos una réplica de respaldo del archivo de datos asegurando el archivo original:

$$\text{cp espectro\_raman.csv espectro\_raman\_backup.csv} $$
PASO 2

Confirmación del duplicado.

Comprobamos el tamaño en bytes de ambos ficheros para validar la integridad de la copia:

$$\text{ls -l espectro\_raman*.csv} $$
Conclusión

Realizar respaldos previos al procesado evita la pérdida irreparable de datos experimentales.

Ejemplo 4:

Reorganización y reubicación de series temporales de microscopía electrónica.

PASO 1

Creación del directorio de destino.

Preparamos la carpeta que almacenará las imágenes procesadas:

$$\text{mkdir -p ./imagenes\_sem/procesadas} $$
PASO 2

Traslado de los ficheros.

Movemos los archivos que coinciden con el patrón especificado hacia la carpeta de destino:

$$\text{mv imagen\_0*.tiff ./imagenes\_sem/procesadas/} $$
Conclusión

El comando mv permite reorganizar conjuntos masivos de archivos sin duplicar el espacio ocupado en disco.

Ejemplo 5:

Eliminación controlada de ficheros temporales de log tras una simulación molecular.

PASO 1

Inspección de los ficheros candidatos a borrado.

Listamos los archivos temporales generados para verificar que no contienen resultados definitivos:

$$\text{ls *.log} $$
PASO 2

Borrado seguro e interactivo.

Eliminamos los ficheros temporales solicitando confirmación para prevenir eliminaciones accidentales:

$$\text{rm -i *.log} $$
Conclusión

El uso de la opción interactiva en rm constituye una buena práctica fundamental en servidores de producción.