Lo siguiente está funcionando según lo previsto:
$ locate */synse_*_r_unseen_zs.npy
/mnt/home/dario/temp/synse_resources/language_modelling/repo_test_cadavae_5_r_val/bert/cadavae_5_r_unseen_zs.npy /mnt/home/dario/temp/synse_resources/language_modelling/repo_test_synse_10_r_val/bert/synse_10_r_unseen_zs.npy
$ locate synse_*_r_unseen_zs.npy
Sin embargo, esto no devuelve nada.
¿Qué pasa?
EDITAR: Depuración:
$ echo */synse_*_r_unseen_zs.npy
*/synse_*_r_unseen_zs.npy
$ echo /synse_*_r_unseen_zs.npy
/synse_*_r_unseen_zs.npy
$ echo synse_*_r_unseen_zs.npy
synse_*_r_unseen_zs.npy
Respuesta1
Al localizar archivos, un comando de localización que contiene comodines estándar (también conocidos como patrones globales) busca rutas a archivos en su base de datos local. /synse_*_r_unseen_zs.npy
no es una ruta completa a un archivo, por lo que locate /synse_*_r_unseen_zs.npy
no devuelve nada (porque los resultados de búsqueda locate synse_*_r_unseen_zs.npy
en su Ubuntu son un conjunto vacío), sin embargo, */synse_*_r_unseen_zs.npy
es una ruta completa a los archivos, por lo que locate */synse_*_r_unseen_zs.npy
devuelve los resultados del comando. El carácter de asterisco en estos comandos se interpreta como un comodín. El asterisco puede representar cualquier número de caracteres (incluido cero, en otras palabras, cero o más caracteres).
Respuesta2
Como mencionó @steeldriver, locate
de forma predeterminada se adjunta un *
comodín al principio y al final del término de búsqueda (así locate abc
es en realidad locate *abc*
)exceptocuando usted mismo agrega un comodín al término de búsqueda, no agrega ni antepone los *
comodines adicionales.
Entonces, aunque $ locate synse_*_r_unseen_zs.npy
no encuentra nada porque no antepone a *
al término de búsqueda, $ locate *synse_*_r_unseen_zs.npy
encuentra el resultado esperado
/mnt/home/dario/temp/synse_resources/language_modelling/repo_test_cadavae_5_r_val/bert/cadavae_5_r_unseen_zs.npy /mnt/home/dario/temp/synse_resources/language_modelling/repo_test_synse_10_r_val/bert/synse_10_r_unseen_zs.npy