Mostrar el contenido del paquete desde la línea de comando

14

Cuando trabajo en la terminal, a menudo uso el open .comando para abrir una ventana del buscador que muestra el directorio de trabajo actual. Pero si el directorio actual es en realidad un paquete, como una .appaplicación o una .vmwarevmmáquina virtual, open .inicia la aplicación o la máquina virtual.

¿Cómo puedo abrir una ventana del buscador que muestra el contenido de un paquete específico?

Lo intenté open -A /System/Library/CoreServices/Finder.app ., pero eso no funcionó.

Andrés
fuente
No está en una Mac para probar, pero ¿has intentado simplemente usar cd /System/Library/CoreServices/Finder.app? Si no funciona, eliminaré el comentario.
stuffe
Apuesto a que una suposición open -a Finder .no funciona porque cuando haces doble clic en un paquete de aplicaciones en Finder, se inicia la aplicación :).
Jason Salaz

Respuestas:

3

Usar open -Rpara el primer archivo en el paquete funcionaría incluso si el paquete no tiene un Contentsdirectorio:

reveal() (
  shopt -s nullglob
  for f; do
    a=("$f"/*)
    [[ -d $f && ${#a} != 0 ]] && open -R -- "${a[0]}" || open -R -- "$f"
  done
)

Sin open -Rembargo, podría ser más fácil escribir y la ruta de algún archivo dentro del paquete. Puede enlazar menu-completeen .inputrchacer más fácil insertar la ruta del primer archivo.

Lri
fuente
9

Simplemente puede cdingresar al paquete para abrirlo en la Terminal y luego open Contentsabrir el contenido en Finder.

Por ejemplo, para abrir el contenido de Safari.app en Finder, puede ejecutar lo siguiente:

cd /Applications/Safari.app
open Contents
grg
fuente
1
No, no todos los paquetes tienen una Contentscarpeta, .vmwarevmlas máquinas virtuales seguramente no.
Andrew
Solo archivos .
Andrew
Otro tipo de paquete sin Contentscarpeta es el .xcodeprojpaquete. Puedes obtener un ejemplo aquí .
Andrew
2
El bit de contenido es solo un ejemplo, realizar un cdarchivo .app es lo que está buscando, independientemente de los contenidos eventuales de los paquetes de aplicaciones.
estuffe
1
open -R *

abre el paquete en Finder. Pero cuidado: también selecciona todos los archivos y carpetas contenidos. En general, esto podría estar bien para usted, ya que la mayoría de las veces es justo Contents.

Se ve como esto: Schalalalalala

Max Ried
fuente
2
Abrir * parece una muy mala idea, especialmente sin advertir a las personas sobre lo que haría en el directorio incorrecto (y cómo alguien que no obtiene directorios ni siquiera sabe en cuál está). ¿Debería ser esto un comentario sobre esta otra respuesta ?
bmike
@bmike supongo que olvidaste la opción -R ...
Max Ried
0
open -R .

Desde

man open

-R, --reveal Selecciona en el Finder en lugar de abrirlo.

Ajith
fuente
-1

Desde el buscador, haga clic con el botón derecho en la aplicación y seleccione 'Mostrar contenido ". Se abre la aplicación y luego puede navegar a través de las carpetas adjuntas.

jmh
fuente