Acabo de crear y subir un GitHub Gist GitHub Gist que puede ayudarte.
La funcionalidad principal es:
function get_apps_folder () {
mdfind -0 -onlyin / \
'kMDItemKind=="Application" && kMDItemDisplayName="'"${1:-TextEdit}"'"' \
| xargs -0 -I{} dirname {}
}
function open_apps_folder () {
open $(get_apps_folder "$1")
}
Podría tomar eso y agregar las dos funciones a su ~/.bash_profile
y estarían disponibles para cualquier sesión de shell interactiva que esté usando. (Y sí, las comillas simples y dobles mezcladas e integradas pueden ser complicadas) .--)
Pero, para dar una mejor explicación, la parte principal es:
mdfind -0 -onlyin / 'kMDItemKind=="Application" && kMDItemDisplayName="VMware Fusion"' | xargs -0 -I{} open {}
El -onlyin /path
limita la búsqueda solo al volumen raíz, de lo contrario, también se buscará cualquier volumen adjunto "Spotlight-searchable" adjunto, incluyendo Time Machine, que puede ser difícil de manejar y / o detallado, por lo tanto, usar -onlyin /
.
En el Gist, cada salida de línea por mdfind
se alimenta a xargs
que llama a open
sobre lo que se le pasa. Tenga en cuenta que no hay una comprobación particularmente sólida de lo que se pasa a xargs
(es decir, se supone que está obteniendo un directorio).
mdfind
y mdls
pueden ser bastante útiles para cosas como esta, aunque pueden tardar un poco en acostumbrarse. Generalmente uso mdls /path/to/file
para tener una idea de qué metadatos tiene ese tipo de archivo. Luego puedo tomar esas claves y valores para buscar usando mdfind
. Puede encontrar una gran cantidad de páginas, ejemplos y documentación, BTW.