Si el archivo es únicamente en un lugar que podría intentar lo siguiente:
cd "$(find ~/ -name [filename] -exec dirname {} \;)" && ...
Puede utilizar -exec
para invocar dirname
con el camino que encontrar rendimientos (que va a donde el marcador de posición {}
es). Eso cambiará directorios. También puede agregar dobles ampersands (&&
) para ejecutar el próximo comando después de que el shell haya cambiado de directorio.
Por ejemplo:
cd "$(find ~/ -name need_to_find_this.rb -exec dirname {} \;)" && ruby need_to_find_this.rb
Se buscará ese archivo rubí, cambiar al directorio, a continuación, ejecutarlo desde dentro de esa carpeta. Este ejemplo supone que el nombre de archivo es único y que, por alguna razón, el script ruby debe ejecutarse desde su directorio. Si el nombre de archivo no es único, obtendrá muchas ubicaciones pasadas a cd, se devolverá un error y luego no cambiará los directorios.
hallazgo y localizar :) pero no puede localizar hallazgo locatedb ?? – Candyfloss
así que lea 'man 8 updatedb' – msw
Hola candyfloss, por favor revise esto, acabo de publicar algo que resumiría como una solución extremadamente conveniente para este problema. Por favor revisa mi solución de cdf. :-) –