Чтобы узнать, куда Homebrew установил зависимость в macOS, запросите у Homebrew префикс пакета, а затем выведите список файлов его текущей установки. Замените openssl@3 в приведенных ниже командах на нужное имя формулы. Homebrew хранит версии формул в своем каталоге Cellar и может создавать символические ссылки на файлы в общий префикс, поэтому место установки пакета и путь к запускаемой команде могут различаться. Справочное руководство brew(1) Homebrew

Определение пути установки формулы

В Терминале выполните:

brew --prefix openssl@3

Для установленной формулы это выведет расположение, где находится или куда привязана эта формула. Если вы хотите, чтобы Homebrew возвращал ошибку, когда формула не установлена, используйте параметр --installed:

brew --prefix --installed openssl@3

Результат обычно использует постоянный путь opt Homebrew, например /opt/homebrew/opt/openssl@3 во многих конфигурациях Apple silicon или /usr/local/opt/openssl@3 на Intel. Это распространенные значения по умолчанию, а не гарантия: на Mac может быть задан пользовательский префикс или иметься несколько установок Homebrew. Проверяйте вывод на своем собственном компьютере, а не полагайтесь на пути с другого Mac. Homebrew указывает /opt/homebrew в качестве префикса по умолчанию для Apple silicon и /usr/local в качестве префикса по умолчанию для Intel. FAQ Homebrew

Просмотр версионированных файлов и фактического исполняемого файла

Чтобы вывести список путей внутри текущего кега (keg) формулы — каталога для ее установленной версии, выполните:

brew list --formula openssl@3

Homebrew определяет команду brew list с аргументом-формулой как сводку путей внутри текущего кега этой формулы. Чтобы увидеть сам версионированный путь в Cellar, объедините префикс формулы с readlink:

readlink "$(brew --prefix openssl@3)"

Вывод обычно указывает на версионированный каталог, такой как ../Cellar/openssl@3/3.x.y. Точная версия зависит от того, что именно установлено. Homebrew описывает установку формул как кеги (kegs) в Cellar, при этом некоторые файлы имеют символические ссылки в общий префикс Homebrew. Formula Cookbook

Если вопрос заключается именно в том, «Какой исполняемый файл запустит моя командная оболочка?», проверьте разрешение команды отдельно:

command -v openssl

Это покажет первую подходящую команду, найденную через переменную PATH вашей текущей оболочки. Она может отличаться от префикса формулы, если другая установка находится раньше в PATH, или если формула не предоставляет команду с таким именем. Чтобы проверить исполняемый файл напрямую, используйте путь, выведенный командой command -v, вместе с ls -l, чтобы проверить, является ли он символической ссылкой. Пакет может содержать библиотеки, заголовочные файлы и вспомогательные компоненты, а не только исполняемые файлы; проверка одной команды не покажет все файлы пакета.

Если имя формулы неясно или отсутствует

Выведите список установленных формул с версиями, а затем определите нужное имя:

brew list --formula --versions

Homebrew также разделяет формулы, которые считаются запрошенными пользователем, и те, которые были установлены как зависимости. Эти команды помогут сузить список:

brew list --formula --installed-on-request
brew list --formula --no-installed-on-request

Если brew --prefix --installed NAME сообщает, что формула не установлена, проверьте ее точное имя в brew list --formula --versions. Зависимость могла быть удалена во время очистки, может относиться к другой установке Homebrew или могла быть установлена с помощью другого пакетного менеджера. Если доступно несколько копий brew, команда command -v brew покажет, какую из них использует ваша текущая оболочка; выполняйте запросы к пакетам через эту же команду brew.

Если пакет был установлен с помощью установщика macOS

Для программного обеспечения, установленного приложением «Установщик» Apple из .pkg, команды Homebrew неприменимы. Утилита pkgutil в macOS позволяет отобразить список идентификаторов пакетов и файлы, зарегистрированные для квитанции об установке (receipt):

pkgutil --pkgs
pkgutil --files com.example.package

Замените com.example.package фактическим идентификатором из вывода первой команды. Данные --files берутся из базы данных квитанций приложения «Установщик»; это не универсальный каталог установок всех пакетных менеджеров. Идентификаторы пакетов могут не совпадать с видимым названием приложения. Руководство Apple по pkgutil

Что показывают и чего не показывают эти пути

Для формулы Homebrew команда brew --prefix NAME является быстрым способом узнать ее расположение, управляемое Homebrew, а brew list NAME показывает пути внутри ее текущего кега. Используйте command -v, когда нужно узнать, какой исполняемый файл выбирает ваша командная оболочка. Они отвечают на разные вопросы: файлы пакета могут существовать, даже если его исполняемый файл отсутствует в PATH, а исполняемый файл, найденный в PATH, может относиться к чему-то другому, помимо проверяемой формулы.

Если вам нужен полный перечень файлов пакета, установленного другим способом, используйте квитанции или инструменты вывода списков соответствующего пакетного менеджера. Не делайте выводов о месте установки только на основе имени пакета.

Источники