Comando basename en Linux con ejemplos

basename elimina la información del directorio y los sufijos de los nombres de los archivos, es decir , imprime el nombre del archivo NOMBRE con los componentes principales del directorio eliminados.

Usando el comando de nombre base:

El comando basename se puede usar fácilmente simplemente escribiendo basename seguido del nombre del archivo o la ruta completa.

Sintaxis del comando basename:

$basename NAME [SUFFIX]
        or
$basename OPTION NAME

donde, NOMBRE se refiere al nombre del archivo o la ruta completa del archivo y OPCIÓN se refiere a las opciones compatibles con el comando basename y, en caso de que desee eliminar el sufijo de un archivo, puede proporcionar el nombre del archivo seguido del SUFIJO que desee. deshacerse.

Ejemplo :

/* basename removes directory path and 
   returns the file name, kt */
$basename /usr/local/bin/kt
kt

En el primer caso, el comando basename elimina el nombre de los directorios del nombre completo de la ruta del archivo kt y, en el segundo caso, basename elimina el sufijo .html de kt.html.

Opciones para el comando basename:

  • -a, – -opción múltiple: esta opción le permite admitir múltiples argumentos y tratar cada uno como un NOMBRE , es decir , puede dar varios nombres de archivo o nombres de ruta completos con el uso de la opción -a .
    /* -a is used for multiple inputs */
    $basename -a /usr/local/bin/kt /usr/local/bin/kt.html
    kt
    kt.html
    
  • -s, – -suffix = opción SUFFIX: esta opción elimina un sufijo final SUFFIX, como una extensión de archivo.
    /*.html suffix is removed from kt.html 
       when followed by -s option */
    $basename -s .html kt.html
    kt
    
  • Opción -z: esto separa la salida con NULL en lugar de una nueva línea.
    /* The outputs of the two arguments passed
       are not separated by a newline*/
    $basename -az /usr/local/bin/kt kt.html
    ktkt
    
  • – Opción -help: muestra la información de ayuda y sale.
  • – Opción -version: Esto muestra la información de la versión y sale.

Aplicación del comando basename:

Hay muchas utilidades disponibles que solo son útiles cuando se trata de scripts de shell y no tienen ninguna aplicación práctica cuando se usan solas y el nombre base entra en esta categoría.

Ejemplo de un script de shell que convierte archivos de imagen gif en archivos de imagen png con la ayuda del comando basename:

/*shell script to convert the
gif image file format into
png image file format */

#!/bin/sh
for file in *.gif;do
    #exit if there are no files
    if [! -f $file];then
        exit
    fi
    b='basename $file .gif'
    echo NOW $b.gif is $b.png
    giftopnm $b.gif | pnmtopng >$b.png
done

En el script de shell anterior, el comando basename se usa para extraer los nombres de los archivos con la extensión .gif sin la extensión para que puedan convertirse en archivos .png .

Referencias: comando de nombre base

Publicación traducida automáticamente

Artículo escrito por Dimpy Varshni y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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