texto recursivo por fecha ejemplos consola comando buscar archivos archivo bash shell unix ksh

bash - por - comando find linux recursivo



Agarra el nombre de archivo en Unix fuera de la ruta completa (4)

En bash

path=/this/is/could/be/any/path/abc.txt

Si tu camino tiene espacios, envuélvelo en "

path="/this/is/could/be/any/path/a b c.txt"

Luego, para extraer la ruta, use la función de nombre base

file=$(basename "$path")

o

file=${path##*/}

Estoy tratando de sacar "abc.txt" /this/is/could/be/any/path/abc.txt usando el comando Unix. Tenga en cuenta que /this/is/could/be/any/path es dinámico.

¿Alguna idea?

Gracias por adelantado.


Puede usar basename /this/is/could/be/any/path/abc.txt


Puedes usar el comando dirname

$ dirname $path


basename path da el nombre del archivo al final de la ruta

Editar:

Probablemente vale la pena agregar que un patrón común es usar comillas inversas alrededor de los comandos, por ejemplo, `nombre base ...`, por lo que los shells de UNIX ejecutarán el comando y devolverán su valor textual.

Para asignar el resultado del nombre base a una variable, use

x=`basename ...path...`

y $ x será el nombre del archivo.