GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo obtener el nombre de archivo de la ruta completa en Linux

La ruta completa de un archivo en Linux se refiere a la dirección completa, incluidos los directorios y subdirectorios mediante los cuales se puede ubicar el archivo. Cada sistema operativo tiene diferentes variantes de la ruta completa de un archivo.

En Linux, se parece a lo siguiente:

/home/user/Documents/test.txt

Esta es la ruta completa del archivo test.txt .

Cuando se trata manualmente con una ruta de archivo, es fácil obtener el nombre del archivo, pero si está utilizando un script para algún tipo de automatización, es posible que deba extraer el nombre del archivo en ciertos escenarios.

Veamos cómo podemos extraer el nombre del archivo de la ruta completa en Linux.

Uso del comando de nombre base

Todo el propósito del comando nombre base es recuperar el nombre de archivo de una ruta de archivo. Aunque no es demasiado difícil obtener el nombre del archivo de una ruta completa, el nombre base lo hace automáticamente por usted y no tiene que pasar por la molestia de analizar la ruta del archivo, etc.

La sintaxis es:

$ basename full_file_path
$ basename /var/log/syslog   [example command]

Utilice el -a un argumento para pasar varias rutas.

$ basename -a /var/log/syslog /var/log/dpkg.log

Uso de la sustitución de parámetros de Bash

Sustituciones de parámetros de Bash son una forma de modificar una variable sobre la marcha. Por lo tanto, para usar este método, necesitamos almacenar la ruta del archivo en una variable.

$ fullpath="/var/log/syslog"

Ahora aplicaremos la sustitución de parámetros y almacenaremos el valor en otra variable.

$ filename=${fullpath##*/}
$ echo $filename

Básicamente, lo que esto hace es eso:tritura la parte anterior al último ‘/’ en 'ruta completa ' y solo conserva el resto de la cadena, que no es más que el nombre del archivo.

Conclusión

En este artículo, aprendimos sobre dos formas de obtener un nombre de archivo a partir de una ruta de archivo completa en Linux. Si desea obtener más información sobre el comando nombre base y parámetro sustituciones en Bash, asegúrese de revisar sus respectivas páginas man con:

$ man basename
$ man bash

¡Gracias por leer y háganos saber sus pensamientos y preguntas a continuación!


Linux
  1. Linux:¿cómo hacer que Sar se muestre para el día anterior?

  2. ¿Cómo crear un archivo en Linux desde la ventana de terminal?

  3. cómo obtener la ruta relativa del directorio actual en tomcat desde el entorno linux usando java

  4. ¿Cómo obtener la ruta al archivo actual (pwd) en Linux desde C?

  5. Cómo obtener solo el número de líneas de un archivo

Cómo usar el comando md5sum en Linux

Cómo obtener el tamaño de un directorio en Linux

Cómo quitar (^M) caracteres de un archivo en Linux

¿Cómo puedo obtener la duración de un archivo de video desde la consola?

¿Cómo obtener máscara de red de bash?

¿Cómo obtener el tamaño físico de un archivo en Linux?