Comando basename: Extrae nombres de archivos

comando_basename
comando_basename

El comando basename en Linux es una herramienta fundamental en sistemas UNIX y Linux, ampliamente utilizada en scripts de shell y administración de sistemas. Este comando permite extraer el nombre de un archivo de su ruta completa, eliminando cualquier prefijo de directorio. Su importancia radica en la simplicidad que ofrece a los administradores de sistemas y desarrolladores al manejar nombres de archivos y rutas, permitiendo un fácil acceso a la información esencial sin la necesidad de manipulación manual de cadenas.

Si quieres aprender más sobre Linux, revisa nuestra Guía completa de comandos Linux y nuestro Curso de Linux gratis , te ayudarán a dominar la terminal y a sacar el máximo provecho de este artículo.

Sintaxis básica

basename [OPCIÓN]... NOMBRE [SUFIJO]...
  • NOMBRE: Es la ruta completa o relativa del archivo del cual se desea extraer el nombre.
  • SUFIJO (opcional): Permite especificar un sufijo que se eliminará del resultado.

Flags más comunes

OpciónDescripciónEjemplo
-aProcesa múltiples archivos y devuelve sus nombres por separado.basename -a /tmp/file1 /tmp/file2
-sElimina un sufijo específico del nombre del archivo.basename -s .txt archivo.txt
-zTrata el input como una lista de nombres separada por null.basename -z < archivo.txt

Ejemplo práctico

#!/bin/bash

# Lista de archivos
archivos=("/home/usuario/documento1.txt" "/home/usuario/imagen.jpg" "/etc/config.txt")

# Usar basename para obtener solo el nombre de los archivos sin la ruta completa
echo "Nombres de archivos sin rutas:"
for archivo in "${archivos[@]}"; do
    echo "$(basename "$archivo")"  # Muestra solo el nombre del archivo
done

# Usar basename con opción -s para eliminar sufijos
echo -e "\nNombres de archivos sin sufijo .txt:"
for archivo in "${archivos[@]}"; do
    nombre=$(basename "$archivo" .txt)  # Elimina el sufijo .txt
    echo "$nombre"
done

En resumen, el comando basename es una herramienta poderosa y versátil que facilita la manipulación de nombres de archivos en sistemas Linux. Su capacidad para obtener el nombre de un archivo a partir de su ruta completa, así como la opción de eliminar sufijos, lo convierte en un recurso invaluable para desarrolladores y administradores de sistemas. La simplicidad y efectividad del comando basename lo hacen indispensable en cualquier conjunto de herramientas de administración de sistemas.

Ejemplo en video

Para complementar esta guía, hemos preparado un video donde se muestra paso a paso cómo usar el comando basename en Linux.

Este video te ayudará a comprender de manera práctica todo lo explicado en este artículo.

Comentarios

No hay comentarios aún. ¿Por qué no comienzas el debate?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *