Показать содержимое пакета из командной строки


14

При работе в терминале я часто использую open .команду, чтобы открыть окно поиска, показывающее текущий рабочий каталог. Но если текущий каталог на самом деле является пакетом, таким как .appприложение или .vmwarevmвиртуальная машина, open .вместо этого запускается приложение или виртуальная машина.

Как открыть окно поиска с указанием содержимого указанного пакета?

Я пытался open -A /System/Library/CoreServices/Finder.app ., но это не сработало.


Не на Mac для тестирования, но вы пробовали просто использовать cd /System/Library/CoreServices/Finder.app? Если это не сработает, я удалю комментарий.
Stuff

Держу пари, что предположение open -a Finder .не сработает, потому что, когда вы дважды щелкаете по Пакету приложений в Finder, оно запускает приложение :).
Джейсон Салаз

Ответы:


3

Использование open -Rпервого файла в комплекте будет работать, даже если в комплекте нет Contentsкаталога:

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

open -RХотя может быть проще просто ввести и путь к какому-либо файлу внутри пакета. Вы можете связать menu-completeв , .inputrcчтобы сделать его проще вставить путь к первому файлу.


9

Вы можете просто cdв пакет открыть его в Терминале, затем open Contentsоткрыть содержимое в Finder.

Например, чтобы открыть содержимое Safari.app в Finder, вы можете выполнить следующее:

cd /Applications/Safari.app
open Contents

1
Нет, не у всех пакетов есть Contentsпапка - .vmwarevmвиртуальные машины точно не имеют.
Андрей


Другой вид комплекта без Contentsпапки - это .xcodeprojкомплект. Вы можете получить пример здесь .
Андрей

2
Содержание бит является только примером, выполняя cdв файл .app является то , что вы ищете, независимо от приложения расслоения возможных содержимого.
Stuff

1
open -R *

открывает пакет в Finder. Но будьте осторожны: он также выбирает все содержащиеся в нем файлы и папки. В целом это может быть хорошо для вас, так как в большинстве случаев это простоContents .

Выглядит так: Schalalalalala


2
Открытие * кажется очень плохой идеей, особенно без предупреждения людей о том, что он будет делать в неправильном каталоге (и как кто-то, кто не получает каталоги, даже узнает, в каком он находится). Может быть, это комментарий к другому ответу ?
bmike

@bmike Полагаю, вы забыли опцию -R ...
Макс Райд

0
open -R .

Из

man open

-R, --reveal Выбирает в Finder вместо открытия.


-1

В окне поиска щелкните правой кнопкой мыши приложение и выберите «Показать содержимое». Откроется приложение, и вы сможете перемещаться по вложенным папкам.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.