Hay un -path
predicado que es útil aquí:
find . -path '*/ABC_MPSC/ABC.jpg'
La descripción de POSIX para ese predicado es:
El primario evaluará como verdadero si el nombre de ruta actual coincide con el patrón utilizando la notación de coincidencia de patrón descrita en la notación de coincidencia de patrón. Las reglas adicionales en los patrones utilizados para la expansión del nombre de archivo no se aplican ya que esta es una operación de coincidencia, no una expansión.
La razón por la que -name "ABC_MPSC/ABC.jpg"
falló es porque el -name
predicado:
se evaluará como verdadero si el nombre base del nombre de ruta actual coincide con el patrón
En otras palabras, -name
nunca ve el directorio del nombre de archivo actual, solo el nombre de archivo base (ABC.jpg, por ejemplo).
locate
, que debería ser significativamente más rápido, pero solo funciona si el archivo ya existía laupdatedb
última vez que se ejecutó.