brew
--version
brew
指令
[--verbose
|-v
] [選項
] [公式
] …
Homebrew 是安裝 macOS 中未包含的 UNIX 工具的最簡單和最靈活的方式。它還可以安裝未針對您的 Linux 發行版打包的軟體,而無需使用 sudo
。
從上游來源構建的 Homebrew 套件定義
安裝 macOS 本機應用程式的 Homebrew 套件定義
Homebrew 安裝的路徑,例如 /usr/local
給定 公式 版本的安裝目的地目錄,例如 /usr/local/Cellar/foo/0.1
包含一個或多個有版本的 桶 的目錄,例如 /usr/local/Cellar/foo
如果 公式 沒有連結到 Homebrew 前綴,則它是僅桶
指向 桶 的活動版本的符號連結,例如 /usr/local/opt/foo
包含一個或多個命名的 架 的目錄,例如 /usr/local/Cellar
包含一個或多個命名的 桶 的目錄,例如 /usr/local/Caskroom
在 Homebrew/brew GitHub 存儲庫之外定義的 brew
子指令
公式、桶 和/或 外部指令 的目錄(通常是 Git 存儲庫)
預先構建的桶,倒入到 酒窖 中的 架,而不是從上游來源構建
有關完整指令列表,請參閱指令部分。
使用 --verbose
或 --debug
,許多指令會打印額外的調試資訊。請注意,這些選項應該僅在指令之後出現。
一些指令行為可以通過環境變數進行自定義;請參閱環境部分。
install
公式
安裝 公式
。
公式
通常是要安裝的公式名稱,但它還有其他列在指定公式部分的語法。
uninstall
公式
卸載 formula
。
列表
列出所有已安裝的 formulae。
search
[text
|/
text
/
]對 cask tokens 和 formula names 執行子字串搜索以尋找 text
。如果 text
被斜杠包圍,則解釋為正則表達式。對 text
的搜索在線擴展到 homebrew/core
和 homebrew/cask
。如果未提供搜索條件,則列出所有本地可用的 formulae。
analytics
[subcommand
]控制 Homebrew 的匿名聚合用戶行為分析。詳情請參閱 https://homebrew.dev.org.tw/Analytics。
brew analytics
[state
]顯示 Homebrew 分析的當前狀態。
brew analytics
(on
|off
)分別開啟或關閉 Homebrew 分析。
autoremove
[--dry-run
]卸載僅作為另一個 formula 的依賴關係而安裝的 formulae,且現在不再需要。
-n
, --dry-run
列出將要卸載的內容,但實際上不卸載任何內容。
casks
列出所有本地可安裝的 casks,包括簡稱。
cleanup
[options
] [formula
|cask
…]刪除所有 formulae 和 casks 的陳舊鎖定文件和過時的下載文件,並刪除已安裝 formulae 的舊版本。如果指定了參數,則僅針對給定的 formulae 和 casks 執行此操作。刪除所有超過 120 天的下載。可以使用 HOMEBREW_CLEANUP_MAX_AGE_DAYS
進行調整。
--prune
刪除所有舊於指定 days
的緩存文件。如果要刪除所有內容,請使用 --prune=all
。
-n
, --dry-run
顯示將要刪除的內容,但實際上不刪除任何內容。
-s
清理緩存,包括最新版本的下載文件。請注意,任何已安裝 formulae 或 casks 的下載文件仍不會被刪除。如果也想刪除它們:rm -rf "$(brew --cache)"
--prune-prefix
只從前綴中修剪符號連結和目錄,不移除其他文件。
command
command
[…]在調用 brew
cmd
時顯示所使用文件的路徑。
commands
[--quiet
] [--include-aliases
]顯示內置和外部命令的列表。
-q
, --quiet
僅列出命令的名稱,不包括類別標題。
--include-aliases
包括內部命令的別名。
completions
[subcommand
]控制 Homebrew 是否自動連結外部 tap 的 shell 完整性文件。詳細資訊請參閱 https://homebrew.dev.org.tw/Shell-Completion。
brew completions
[state
]顯示 Homebrew 完整性的當前狀態。
brew completions
(link
|unlink
)連結或取消連結 Homebrew 完整性。
config
, --config
顯示有用於除錯的 Homebrew 和系統配置信息。如果您提交錯誤報告,則需要提供此信息。
deps
[options
] [formula
|cask
…]顯示 formula
的依賴項。當給定多個 formula 參數時,顯示每個 formula 的依賴項的交集。默認情況下,deps
顯示所有必需和建議的依賴項。
如果安裝了每個公式參數的任何版本並且沒有傳遞其他選項,此命令將顯示它們的實際運行時依賴關係(類似於 brew linkage
),如果安裝的版本過時,則此依賴關係可能與當前版本的聲明依賴關係不同。
注意: --missing
和 --skip-recommended
的優先順序高於 --include-*
。
-n
, --topological
按拓撲順序排序依賴關係。
-1
, --direct
僅顯示公式中聲明的直接依賴關係。
--union
顯示多個 formula
的依賴關係的聯集,而不是交集。
--full-name
按完整名稱列出依賴關係。
--include-build
包括 formula
的 :build
依賴關係。
--include-optional
包括 formula
的 :optional
依賴關係。
--include-test
包括 formula
的 :test
依賴關係(非遞歸)。
--skip-recommended
跳過 formula
的 :recommended
依賴關係。
--include-requirements
除了依賴關係外,還包括 formula
的要求。
--tree
將依賴關係顯示為樹狀結構。當給出多個公式參數時,為每個公式顯示單獨的樹狀結構。
--graph
將依賴關係顯示為有向圖。
--dot
以 DOT 格式顯示基於文本的圖形描述。
--annotate
在輸出中標記任何構建、測試、隱式、可選或建議的依賴關係。
--installed
列出當前已安裝的公式的依賴關係。如果指定了 formula
,則僅列出當前已安裝的其依賴關係。
--missing
僅顯示缺失的依賴關係。
--eval-all
評估所有可用的公式和桶,無論是否已安裝,以列出它們的依賴關係。
--for-each
切換到由--eval-all
選項使用的模式,但僅列出每個提供的formula
的依賴關係,每行一個公式。這用於調試--installed
/--eval-all
顯示模式。
--HEAD
顯示HEAD版本的依賴關係,而不是穩定版本。
--os
顯示指定操作系統的依賴關係。
--arch
顯示指定CPU架構的依賴關係。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
desc
[options
] formula
|cask
|text
|/
regex
/
[…]顯示formula
的名稱和一行描述。在第一次搜索時創建緩存,使得該搜索比後續的搜索慢。
-s
, --search
搜索名稱和描述以找到text
。如果text
被斜杠括起來,則將其解釋為正則表達式。
-n
, --name
僅搜索名稱以找到text
。如果text
被斜杠括起來,則將其解釋為正則表達式。
-d
, --description
僅搜索描述以找到text
。如果text
被斜杠括起來,則將其解釋為正則表達式。
--eval-all
評估所有可用的公式和桶,無論是否已安裝,以搜索其描述。如果設置了HOMEBREW_EVAL_ALL
,則默認為true。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
developer
[subcommand
]控制Homebrew的開發者模式。啟用開發者模式時,brew update
將Homebrew更新為master
分支上的最新提交,而不是最新的穩定版本,還會有一些其他行為更改。
brew developer
[state
]顯示 Homebrew 開發者模式的當前狀態。
brew developer
(on
|off
)分別啟用或關閉 Homebrew 的開發者模式。
文檔
在瀏覽器中打開 Homebrew 的在線文檔,網址為 https://homebrew.dev.org.tw。
doctor
, dr
[--list-checks
] [--audit-debug
] [diagnostic_check
…]檢查系統是否存在潛在問題。如果發現任何潛在問題,將以非零狀態退出。
請注意,這些警告僅用於幫助 Homebrew 的維護者進行調試,如果您提交問題。如果您使用 Homebrew 的一切正常運行,請不要擔心或提交問題,只需忽略它。
--list-checks
列出所有審核方法,如果提供作為參數,則可以單獨運行。
-D
, --audit-debug
啟用審核方法的調試和分析。
fetch
[options
] formula
|cask
[…]下載 formula
e 的二進制瓶或源代碼(如果有),以及 cask
s 的二進制文件。對於文件,還會打印 SHA-256 校驗和。
--os
下載給定的操作系統。 (傳遞 all
以下載所有操作系統。)
--arch
下載給定的 CPU 架構。 (傳遞 all
以下載所有架構。)
--bottle-tag
下載給定標籤的二進制瓶。
--HEAD
下載 HEAD 版本而不是穩定版本。
-f
, --force
刪除之前緩存的版本並重新下載。
-v
, --verbose
執行詳細 VCS 檢查,如果 URL 代表一個 VCS 的話。這對於查看現有 VCS 快取是否已更新很有用。
--retry
如果下載失敗,或者先前快取版本的校驗和不再匹配,則重試或重新下載。最多嘗試 5 次,採用指數退避。
--deps
同時下載任何列出的formula
的依賴項。
-s
, --build-from-source
下載源代碼包而不是瓶子。
--build-bottle
下載源代碼包(用於最終裝瓶),而不是瓶子。
--force-bottle
如果存在於當前或最新版本的 macOS 中,即使在安裝期間不會使用,也要下載瓶子。
--[no-]quarantine
禁用/啟用下載的隔離(默認:啟用)。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
formulae
列出所有本地可安裝的formulae
,包括簡短名稱。
gist-logs
[options
] formula
將formula
的失敗構建日誌上傳到一個新的 Gist。如果找不到日誌,則顯示錯誤消息。
--with-hostname
在 Gist 中包含主機名。
-n
, --new-issue
在創建 Gist 後,自動在適當的 GitHub 存儲庫中創建新的問題。
-p
, --private
Gist 將被標記為私有,不會顯示在列表中,但可以使用其鏈接訪問。
help
[command
…]輸出brew
command
的使用說明。等效於brew --help
command
。
home
, homepage
[--formula
] [--cask
] [formula
|cask
…]在瀏覽器中打開formula
或cask
的主頁,如果沒有提供參數,則打開Homebrew的官方主頁。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
info
, abv
[options
] [formula
|cask
…]顯示您的Homebrew安裝的簡要統計信息。如果提供了formula
或cask
,則顯示有關它的信息摘要。
--analytics
列出全局Homebrew分析數據,或者如果指定了,則列出formula
的安裝和構建錯誤數據(假設未設置HOMEBREW_NO_ANALYTICS
或HOMEBREW_NO_GITHUB_API
)。
--days
要檢索的分析數據天數。 days
的值必須是30
、90
或365
。默認值為30
。
--category
要檢索的分析數據類型。 category
的值必須是install
、install-on-request
或build-error
;如果未指定formula
,則可以指定cask-install
或os-version
。默認值為install
。
--github
在瀏覽器中打開formula
和cask
的GitHub源頁面。要在本地查看歷史記錄:brew log -p
formula
或cask
。
--json
打印JSON表示。目前version
的默認值為v1
,用於formula
。對於formula
和cask
,使用v2
。請參閱文檔以獲取使用JSON輸出的示例:https://homebrew.dev.org.tw/Querying-Brew。
--installed
列印目前已安裝的公式的 JSON。
--eval-all
評估所有可用的公式和桶,無論是否已安裝,以列印它們的 JSON。如果設置了 HOMEBREW_EVAL_ALL
,則隱含執行此操作。
--變化
將每個公式的 JSON 輸出中包含變化哈希。
-v
, --verbose
顯示更詳細的分析數據以供 formula
使用。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
install
[options
] formula
|cask
[…]安裝 formula
或 cask
。可能會將特定於 formula
的其他選項附加到命令中。
除非設置了 HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK
,否則將為已過時的依賴和具有破損連結的依賴分別運行 brew upgrade
或 brew reinstall
。
除非設置了 HOMEBREW_NO_INSTALL_CLEANUP
,否則將運行 brew cleanup
以清理已安裝的公式,或每 30 天清理所有公式。
除非設置了 HOMEBREW_NO_INSTALL_UPGRADE
,否則如果已安裝但過時,brew install
formula
將升級 formula
。
-d
, --debug
如果酿造失败,打开一个交互式调试会话,可以访问 IRB 或临时构建目录中的 shell。
--顯示時間
在运行结束时打印每个软件包的安装时间。
-f
, --force
安裝公式時不檢查先前安裝的僅限桶或未遷移的版本。安裝桶時,覆蓋現有文件(二進位文件和符號鏈接除外,除非原始來自同一桶)。
-v
, --verbose
打印驗證和安裝後步驟。
-n
, --dry-run
顯示將要安裝的內容,但實際上不安裝任何東西。
--formula
將所有命名參數視為公式。
--ignore-dependencies
一個不受支援的 Homebrew 開發選項,用於跳過安裝任何類型的依賴。如果依賴項目尚未存在,公式將會出現問題。如果您不是在開發 Homebrew,請考慮調整您的 PATH,而不是使用此選項。
--only-dependencies
安裝指定選項的依賴項目,但不安裝公式本身。
--cc
嘗試使用指定的 compiler
編譯,該編譯器的可執行文件名應該是編譯器的名稱,例如對於 GCC 7,應該是 gcc-7
。為了使用 LLVM 的 clang,請指定 llvm_clang
。要使用蘋果提供的 clang,請指定 clang
。此選項僅接受由 Homebrew 提供或隨 macOS 捆綁的編譯器。如果您在使用此選項時遇到錯誤,請不要提交問題。
-s
, --build-from-source
即使提供了瓶裝版本,也從源代碼編譯 formula
。如果可用,依賴項目仍將從瓶裝版本安裝。
--force-bottle
如果當前版本或最新版本的 macOS 存在瓶裝版本,則安裝該瓶裝版本,即使通常不會使用它進行安裝。
--include-test
安裝運行 brew test
所需的測試依賴項目。
--HEAD
如果 formula
定義了,安裝 HEAD 版本,也就是主要版本、主幹版本、不穩定版本、主控版本。
--fetch-HEAD
檢索上游存儲庫以檢測公式的 HEAD 安裝是否過時。否則,只有在釋出新的穩定或開發版本時,才會檢查存儲庫的 HEAD 是否有更新。
--keep-tmp
保留安裝期間創建的臨時文件。
--debug-symbols
在構建時生成調試符號。源代碼將保留在緩存目錄中。
--build-bottle
在安裝期間準備公式以便最終進行瓶裝,跳過任何後安裝步驟。
--skip-post-install
安裝但跳過任何後安裝步驟。
--bottle-arch
為指定的架構優化瓶裝版本,而不是針對 macOS 版本支持的最舊架構進行優化。
-i
, --interactive
下載並修補 formula
,然後打開一個 shell。這允許用戶運行 ./configure --help
,並確定如何將軟件包裝成 Homebrew 包。
-g
, --git
創建一個 Git 存儲庫,用於創建對軟件的補丁。
--overwrite
在連接時刪除已存在於前綴中的文件。
--cask
將所有命名參數視為桶。
--[no-]binaries
停用/啟用輔助執行檔的連結(預設值:啟用)。
--require-sha
要求所有桶(cask)都具有校驗和檢查碼。
--[no-]quarantine
禁用/啟用下載的隔離(默認:啟用)。
--adopt
採用目的地中與安裝的相同的現有產品。無法與 --force
結合使用。
--skip-cask-deps
跳過安裝桶(cask)的相依性。
--zap
用於 brew reinstall --cask
。刪除與桶(cask)相關的所有檔案。可能會刪除應用程式之間共享的檔案。
leaves
[--installed-on-request
] [--installed-as-dependency
]列出已安裝的公式(formula)中不是其他已安裝公式或桶(cask)的相依性的項目。
-r
, --installed-on-request
僅列出手動安裝的項目。
-p
, --installed-as-dependency
僅列出作為相依性安裝的項目。
link
, ln
[選項
] 已安裝的公式
[…]將公式
的所有已安裝檔案的符號連結到 Homebrew 的前綴目錄。當您安裝公式時,這是自動完成的,但對於手動安裝可能很有用。
--overwrite
在連接時刪除已存在於前綴中的文件。
-n
, --dry-run
列出將由 brew link --overwrite
連結或刪除的檔案,但實際上不會連結或刪除任何檔案。
-f
, --force
允許僅限桶(cask)的公式進行連結。
--HEAD
如果已安裝,則連結公式的 HEAD 版本。
list
, ls
[選項
] [已安裝的公式
|已安裝的桶
…]列出所有已安裝的公式和桶(cask)。如果提供公式
,則摘要顯示其當前桶中的路徑。如果提供桶
,則列出其產品。
--formula
僅列出公式,或將所有命名參數視為公式。
--cask
僅列出桶(cask),或將所有命名參數視為桶(cask)。
--full-name
顯示具有完全合格名稱的公式。除非傳遞了 --full-name
、--versions
或 --pinned
,否則傳遞其他選項(即 -1
、-l
、-r
和 -t
)給 ls
(1),以產生實際輸出。
--versions
顯示已安裝的公式的版本號,或僅顯示指定的公式,如果提供了公式
。
--multiple
僅顯示安裝了多個版本的公式。
--置頂
僅列出已置頂的公式,或僅列出指定(已置頂)的公式(如果提供了formula
)。另請參閱pin
、unpin
。
--已按要求安裝
列出根據要求安裝的公式。
--作為依賴安裝
列出作為依賴項安裝的公式。
-1
強制輸出為每行一個項目。如果輸出不是到終端,則這是默認行為。
-l
以長格式列出公式和/或桶。當傳遞公式或桶名稱作為參數時無效。
-r
反轉公式和/或桶的排序順序,將最舊的條目列在首位。當傳遞公式或桶名稱作為參數時無效。
-t
按修改時間排序公式和/或桶,最近修改的項目排在首位。當傳遞公式或桶名稱作為參數時無效。
log
[options
] [formula
|cask
]顯示formula
或cask
的git log
,如果沒有提供公式或桶,則顯示Homebrew存儲庫的日誌。
-p
,--patch
也打印提交的補丁。
--stat
也打印提交的diffstat。
--oneline
每次提交只打印一行。
-1
只打印一次提交。
-n
,--max-count
僅打印指定數量的提交。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
migrate
[options
] installed_formula
|installed_cask
[…]將已更名的套件遷移到新名稱,其中formula
是套件的舊名稱。
-f
, --force
將已安裝的formula
和提供的formula
視為來自同一個儲存庫,並無論如何都將它們遷移。
-n
, --dry-run
顯示將要遷移的內容,但不實際進行遷移。
--formula
僅遷移公式。
--cask
僅遷移桶。
missing
[--hide=
] [formula
…]檢查給定的formula
桶是否缺少依賴項。如果沒有提供formula
,則檢查所有桶。如果發現任何缺少依賴項的桶,將以非零狀態退出。
--hide
假裝未安裝指定的hidden
。hidden
應該是一個以逗號分隔的公式列表。
nodenv-sync
在~/.nodenv/versions
中為Homebrew安裝的NodeJS版本創建符號鏈接。
請注意,還將創建舊版本的符號鏈接,因此例如NodeJS 19.1.0也將被符號鏈接到19.0.0。
options
[options
] [formula
…]顯示特定於formula
的安裝選項。
--compact
將所有選項顯示在單行上,用空格分隔。
--installed
顯示當前已安裝的公式的選項。
--eval-all
評估所有可用的公式和桶,無論是否已安裝,以顯示它們的選項。
--command
顯示指定command
的選項。
outdated
[options
] [formula
|cask
…]列出有可用更新版本的已安裝桶和公式。默認情況下,在交互式殼中顯示版本信息,在其他情況下則不顯示。
-q
, --quiet
僅列出名稱已過時的桶(優先於--verbose
)。
-v
, --verbose
包括詳細的版本信息。
--formula
僅列出已過時的公式。
--cask
僅列出已過時的桶。
--json
以 JSON 格式輸出結果。有兩個版本:v1
和 v2
。若未指定版本,則預設為 v1
,但此版本已被棄用。 v2
則列印過時的公式和桶。
--fetch-HEAD
檢索上游存儲庫以檢測公式的 HEAD 安裝是否過時。否則,只有在釋出新的穩定或開發版本時,才會檢查存儲庫的 HEAD 是否有更新。
-g
, --greedy
同時包含自動更新為真(auto_updates true
)或版本為最新(version :latest
)的過時桶。
--greedy-latest
同時包含版本為最新(version :latest
)的過時桶。
--greedy-auto-updates
同時包含自動更新為真(auto_updates true
)的過時桶。
pin
installed_formula
[…]釘選指定的formula
,當執行 brew upgrade
formula
命令時,防止它們被升級。另請參見unpin
。
註:依賴於被釘選的 formula 的其他套件可能無法正確安裝或運行新版本。
postinstall
, post_install
installed_formula
[…]重新執行formula
的後安裝步驟。
pyenv-sync
在~/.pyenv/versions
中為 Homebrew 安裝的 Python 版本創建符號連結。
請注意,舊的修補版本符號連結將被創建並連結到次要版本,例如,Python 3.11.0 也將連結到 3.11.3。
rbenv-sync
在~/.rbenv/versions
中為 Homebrew 安裝的 Ruby 版本創建符號連結。
請注意,舊版本符號連結也將被創建,例如,Ruby 3.2.1 也將連結到 3.2.0。
readall
[options
] [tap
…]從指定的 tap
匯入所有項目,如果未提供任何項目,則從所有安裝的 tap
中匯入。當對 formula.rb
進行重大更改時,跨所有項目進行調試問題,測試加載所有項目的性能,或檢查任何當前的 formulae/casks
是否有 Ruby 問題時,這可能很有用。
--os
使用給定的操作系統進行讀取。(傳遞 all
以模擬所有操作系統。)
--arch
使用給定的 CPU 架構進行讀取。(傳遞 all
以模擬所有架構。)
--aliases
驗證每個 tap
中的任何別名符號鏈結。
--syntax
檢查 Homebrew 的所有 Ruby 文件的語法(如果未傳遞 tap
)。
--eval-all
評估所有可用的 formulae
和 casks
,無論是否已安裝。如果設置了 HOMEBREW_EVAL_ALL
,則隱含。
--no-simulate
檢查 formulae
和 casks
時,不模擬其他系統配置。
reinstall
[options
] formula
|cask
[…]卸載然後使用與原始安裝時相同的選項重新安裝 formula
或 cask
,以及特定於 formula
的任何附加選項。
除非設置了 HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK
,否則將為已過時的依賴和具有破損連結的依賴分別運行 brew upgrade
或 brew reinstall
。
除非設置了 HOMEBREW_NO_INSTALL_CLEANUP
,否則將為重新安裝的 formulae
或每 30 天為所有 formulae
執行 brew cleanup
。
-d
, --debug
如果酿造失败,打开一个交互式调试会话,可以访问 IRB 或临时构建目录中的 shell。
--顯示時間
在运行结束时打印每个软件包的安装时间。
-f
, --force
安裝時不檢查先前安裝的僅限桶裝或未遷移版本。
-v
, --verbose
打印驗證和安裝後步驟。
--formula
將所有命名參數視為公式。
-s
, --build-from-source
即使有瓶可用,也從源代碼編譯 formula
。
-i
, --interactive
下載並修補 formula
,然後打開一個 shell。這允許用戶運行 ./configure --help
,並確定如何將軟件包裝成 Homebrew 包。
--force-bottle
如果當前版本或最新版本的 macOS 存在瓶裝版本,則安裝該瓶裝版本,即使通常不會使用它進行安裝。
--keep-tmp
保留安裝期間創建的臨時文件。
--debug-symbols
在構建時生成調試符號。源代碼將保留在緩存目錄中。
-g
, --git
創建一個 Git 存儲庫,用於創建對軟件的補丁。
--cask
將所有命名參數視為桶。
--[no-]binaries
停用/啟用輔助執行檔的連結(預設值:啟用)。
--require-sha
要求所有桶(cask)都具有校驗和檢查碼。
--[no-]quarantine
禁用/啟用下載的隔離(默認:啟用)。
--adopt
採用目的地中與安裝的相同的現有產品。無法與 --force
結合使用。
--skip-cask-deps
跳過安裝桶(cask)的相依性。
--zap
用於 brew reinstall --cask
。刪除與桶(cask)相關的所有檔案。可能會刪除應用程式之間共享的檔案。
search
, -S
[options
] text
|/
regex
/
[…]執行對 cask 標記和公式名稱進行子字串搜尋,以尋找 text
。如果 text
被斜線包圍,則被解釋為正則表達式。
--formula
搜索公式。
--cask
搜索 cask。
--desc
搜索具有與 text
匹配的描述的公式,以及具有與 text
匹配的名稱或描述的 cask。
--eval-all
評估所有可用的公式和桶,無論是否已安裝,以搜索其描述。如果設置了HOMEBREW_EVAL_ALL
,則默認為true。
--pull-request
搜索包含 text
的 GitHub 拉取請求。
--open
僅搜索開放的 GitHub 拉取請求。
--closed
僅搜索已關閉的 GitHub 拉取請求。
--repology
在給定的數據庫中搜索 text
。
--macports
在給定的數據庫中搜索 text
。
--fink
在給定的數據庫中搜索 text
。
--opensuse
在給定的數據庫中搜索 text
。
--fedora
在給定的數據庫中搜索 text
。
--archlinux
在給定的數據庫中搜索 text
。
--debian
在給定的數據庫中搜索 text
。
--ubuntu
在給定的數據庫中搜索 text
。
setup-ruby [命令]
安裝並配置 Homebrew 的 Ruby。如果傳遞了 command
,則僅在該命令需要時運行 Bundler。
shellenv [bash|csh|fish|pwsh|sh|tcsh|zsh]
打印導出語句。當在 shell 中運行時,此 Homebrew 的安裝將被添加到您的 PATH
、MANPATH
和 INFOPATH
中。
變量 HOMEBREW_PREFIX
、HOMEBREW_CELLAR
和 HOMEBREW_REPOSITORY
也被導出,以避免多次查詢它們。為了幫助保證冪等性,當 Homebrew 的 bin
和 sbin
目錄分別位於您的 PATH
中的第一個和第二個位置時,此命令不會產生任何輸出。考慮將此命令的輸出評估添加到您的點文件中(例如在 macOS 上是 ~/.bash_profile
或 ~/.zprofile
,在 Linux 上是 ~/.bashrc
或 ~/.zshrc
): eval "$(brew shellenv)"
可以使用受支持的 shell 名稱參數明確指定 shell。未知的 shell 將輸出 POSIX 導出。
tap
[options
] [user
/
repo
] [URL
]點擊一個公式庫。如果未提供任何參數,將列出所有已安裝的 taps。
如果未指定 URL
,則使用 HTTPS 從 GitHub 點擊一個公式庫。由於許多 taps 都托管在 GitHub 上,此命令是一個快捷方式,可以使用 brew tap
user
/
repo
https://github.com/
user
/homebrew-
repo
。
在指定了 URL
的情況下,可以使用 git
(1) 支援的任何傳輸協議,從任何地方點擊一個公式存儲庫。一個參數形式的 tap
簡化了操作但也有限制。這個兩個參數的指令不做任何假設,因此可以從 GitHub 以外的地方克隆 tap,並使用其他協議,如 SSH、git、HTTP、FTP(S)、rsync。
--custom-remote
安裝或更改具有自定遠端的 tap。對於鏡像很有用。
--repair
將已點擊的公式從符號鏈接式結構遷移到目錄式結構。
--eval-all
評估新 tap 中的所有公式、桶和別名以檢查其有效性。如果設置了 HOMEBREW_EVAL_ALL
,則默認為真。
--force
即使在 API 模式下也強制安裝核心 tap。
tap-info
[--installed
] [--json
] [tap
…]顯示有關一個或多個 tap
的詳細信息。如果沒有提供 tap
名稱,則顯示所有已安裝 tap 的簡要統計信息。
--installed
顯示每個已安裝 tap 的信息。
--json
打印 tap
的 JSON 表示形式。目前 version
的默認和唯一接受的值為 v1
。參見文檔以獲取使用 JSON 輸出的示例:https://homebrew.dev.org.tw/Querying-Brew
uninstall
, remove
, rm
[options
] installed_formula
|installed_cask
[…]卸載一個 formula
或 cask
。
-f
, --force
刪除所有已安裝版本的 formula
。即使未安裝 cask
,也要卸載,覆蓋現有文件並在刪除文件時忽略錯誤。
--zap
刪除與 cask
相關的所有文件。 可能會刪除在應用程序之間共享的文件。
--ignore-dependencies
即使 formula
是任何已安裝公式的依賴項,也不要失敗卸載。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
unlink
[--dry-run
] installed_formula
[…]從 Homebrew 的路徑中移除formula
的符號連結。這對於暫時停用一個 formula 是有用的:brew unlink
formula
&&
commands
&& brew link
formula
-n
, --dry-run
列出將會取消連結的檔案,但不會實際取消連結或刪除任何檔案。
unpin
installed_formula
[…]取消釘選formula
,使其可以被brew upgrade
formula
升級。另見pin
。
untap
[--force
] tap
[…]移除一個已經 tap 過的 formula 儲存庫。
-f
, --force
即使此 tap 中的 formulae 或 casks 目前已安裝,也進行 untap。
update
[options
]使用git
(1)從 GitHub 上取得 Homebrew 和所有 formulae 的最新版本,並執行任何必要的遷移。
--merge
使用git merge
來應用更新(而不是git rebase
)。
--auto-update
在自動更新上運行(例如在brew install
之前)。跳過一些較慢的步驟。
-f
, --force
始終進行較慢的完整更新檢查(即使不必要)。
update-reset
[path-to-tap-repository
…]使用git
(1)將 Homebrew 和所有 tap 儲存庫(或任何指定的repository
)的最新origin/HEAD
取回並重設。
注意:這將破壞您的所有未提交或已提交的更改。
升級
[選項
] [已安裝公式
|已安裝桶
…]使用與原始安裝時相同的選項以及任何追加的 brew 公式選項,升級過時的桶和過時未釘選的公式。如果指定了桶
或公式
,則僅升級給定的桶
或公式
桶(除非它們被釘選;參見pin
,unpin
)。
除非設置了 HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK
,否則將為已過時的依賴和具有破損連結的依賴分別運行 brew upgrade
或 brew reinstall
。
除非設置了HOMEBREW_NO_INSTALL_CLEANUP
,否則將運行brew cleanup
以清理升級的公式,或者每 30 天清理所有公式。
-d
, --debug
如果酿造失败,打开一个交互式调试会话,可以访问 IRB 或临时构建目录中的 shell。
--顯示時間
在运行结束时打印每个软件包的安装时间。
-f
, --force
安裝公式時不檢查先前安裝的僅限桶或未遷移的版本。安裝桶時,覆蓋現有文件(二進位文件和符號鏈接除外,除非原始來自同一桶)。
-v
, --verbose
打印驗證和安裝後步驟。
-n
, --dry-run
顯示將要升級的內容,但不實際進行升級。
--formula
將所有命名參數視為公式。如果未指定命名參數,則僅升級過時的公式。
-s
, --build-from-source
即使有瓶可用,也從源代碼編譯 formula
。
-i
, --interactive
下載並修補 formula
,然後打開一個 shell。這允許用戶運行 ./configure --help
,並確定如何將軟件包裝成 Homebrew 包。
--force-bottle
如果當前版本或最新版本的 macOS 存在瓶裝版本,則安裝該瓶裝版本,即使通常不會使用它進行安裝。
--fetch-HEAD
檢索上游存儲庫以檢測公式的 HEAD 安裝是否過時。否則,只有在釋出新的穩定或開發版本時,才會檢查存儲庫的 HEAD 是否有更新。
--keep-tmp
保留安裝期間創建的臨時文件。
--debug-symbols
在構建時生成調試符號。源代碼將保留在緩存目錄中。
--overwrite
在連接時刪除已存在於前綴中的文件。
--cask
將所有命名參數視為桶。如果未指定命名參數,則僅升級過時的桶。
--skip-cask-deps
跳過安裝桶(cask)的相依性。
-g
, --greedy
還包括具有auto_updates true
或version :latest
的桶。
--greedy-latest
還包括具有version :latest
的桶。
--greedy-auto-updates
還包括具有auto_updates true
的桶。
--[no-]binaries
停用/啟用輔助執行檔的連結(預設值:啟用)。
--require-sha
要求所有桶(cask)都具有校驗和檢查碼。
--[no-]quarantine
禁用/啟用下載的隔離(默認:啟用)。
uses
[選項
] 公式
[…]顯示指定公式
為依賴的公式和桶;即顯示公式
的依賴項。當給定多個公式參數時,顯示使用公式
的公式的交集。默認情況下,uses
顯示所有將公式
指定為其穩定版本構建的必需或建議依賴項的公式和桶。
注意: --missing
和 --skip-recommended
的優先順序高於 --include-*
。
--遞歸
解決多層次的依賴關係。
--installed
僅列出目前已安裝的公式和桶。
--missing
僅列出目前未安裝的公式和桶。
--eval-all
評估所有可用的公式和桶,無論是否已安裝,以顯示它們的相依項目。
--include-build
包含將公式指定為 :build
依賴項目的公式。
--include-test
包含將公式指定為 :test
依賴項目的公式。
--include-optional
包含將公式指定為 :optional
依賴項目的公式。
--skip-recommended
跳過所有將公式指定為 :recommended
依賴項目的公式。
--formula
僅包含公式。
--cask
僅包含桶。
--cache
[options
] [formula
|cask
…]顯示 Homebrew 的下載快取。另請參閱 HOMEBREW_CACHE
。
如果提供了 formula
,則顯示用於快取 formula
的文件或目錄。
--os
顯示給定操作系統的快取文件。(傳遞 all
以顯示所有操作系統的快取文件。)
--arch
顯示給定 CPU 架構的快取文件。(傳遞 all
以顯示所有架構的快取文件。)
-s
, --build-from-source
顯示從源代碼構建時使用的快取文件。
--force-bottle
顯示倒入瓶子時使用的快取文件。
--bottle-tag
顯示倒入指定標籤瓶子時使用的快取文件。
--HEAD
顯示從 HEAD 構建時使用的快取文件。
--formula
僅顯示公式的快取文件。
--cask
僅顯示桶的快取文件。
--caskroom
[cask
…]顯示 Homebrew 的 Caskroom 路徑。
如果提供了 cask
,則顯示安裝 cask
的 Caskroom 中的位置,最後一個路徑不包含任何版本化的目錄。
--cellar
[formula
…]顯示 Homebrew 的 Cellar 路徑。 默認: $(brew --prefix)/Cellar
,或者如果該目錄不存在,則為 $(brew --repository)/Cellar
。
如果提供了 formula
,則顯示安裝 formula
的 Cellar 中的位置,最後一個路徑不包含任何版本化的目錄。
--env
, environment
[--shell=
] [--plain
] [formula
…]將Homebrew的構建環境總結為一個普通列表。
如果命令的輸出通過管道發送且未指定shell,則該列表將格式化為導出到bash(1),除非傳遞了--plain。
--shell
為指定的shell生成環境變量列表,或者使用--shell=auto來檢測當前的shell。
--plain
即使通過管道,也生成純文本輸出。
--prefix
[--unbrewed
] [--installed
] [formula
…]顯示Homebrew的安裝路徑。默認值:
/opt/homebrew
/usr/local
/home/linuxbrew/.linuxbrew
如果提供了formula
,則顯示formula
所在或應安裝的位置。
--unbrewed
列出Homebrew前綴中未由Homebrew安裝的文件。
--installed
如果未安裝formula
,則不輸出任何內容並返回失敗的狀態碼。
--repository
, --repo
[tap
…]顯示Homebrew的Git存儲庫位於何處。
如果提供了user
/
repo
,則顯示tap user
/
repo
的目錄位於何處。
--version
, -v
將Homebrew、Homebrew/homebrew-core和Homebrew/homebrew-cask(如果已tap)的版本號打印到標準輸出。
audit
[options
] [formula
|cask
…]檢查formula
是否符合Homebrew的編碼風格規範。這應在提交新的formula或cask之前運行。如果未提供formula
|cask
,則檢查所有本地可用的formulae和casks並跳過風格檢查。如果發現任何錯誤,將以非零狀態退出。
--os
審核給定的作業系統。(傳遞all
以審核所有作業系統。)
--arch
審核給定的 CPU 架構。(傳遞all
以審核所有架構。)
--strict
運行額外、更嚴格的樣式檢查。
--git
運行額外、較慢的樣式檢查,以導航 Git 存儲庫。
--online
運行額外、較慢的樣式檢查,需要網絡連接。
--installed
僅檢查目前已安裝的配方和桶。
--eval-all
評估所有可用的配方和桶,無論是否已安裝,以審核它們。如果設置了HOMEBREW_EVAL_ALL
,則隱含。
--new
運行各種額外的樣式檢查,以確定新的配方或桶是否符合 Homebrew 的標準。在創建新的配方或桶時應使用此選項,並隱含--strict
和--online
。
--[no-]signing
審核已簽名的應用程序,這在 ARM 上是必需的。
--token-conflicts
審核令牌衝突。
--tap
檢查給定的桶中的配方,指定為user
/
repo
。
--fix
使用 RuboCop 的自動修正功能自動修復樣式違規。
--display-filename
在每行輸出的開頭加上正在審核的文件或配方名稱,以便輕鬆搜索輸出。
--skip-style
跳過執行非 RuboCop 樣式檢查。如果您打算單獨運行brew style
,則很有用。默認情況下啟用,除非通過名稱指定了配方。
-D
, --audit-debug
啟用審核方法的調試和分析。
--only
指定逗號分隔的方法
列表,僅運行名為audit_
method
的方法。
--except
指定逗號分隔的方法
列表,跳過運行名為audit_
method
的方法。
--only-cops
指定以逗號分隔的 cops
列表,僅檢查列出的 RuboCop 檢查項目是否違規。
--except-cops
指定以逗號分隔的 cops
列表,跳過檢查列出的 RuboCop 檢查項目是否違規。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
bottle
[options
] installed_formula
|file
…]從消耗 --build-bottle
安裝的公式生成瓶裝(二進制套件)。 如果公式指定了重新構建版本,將在生成的 DSL 中進行增量。 通過使用 --keep-old
會嘗試保持其原始值,而使用 --no-rebuild
將其移除。
--skip-relocation
不檢查瓶裝是否可以標記為可重定位。
--force-core-tap
即使 formula
不在 homebrew/core
或任何已安裝的 taps 中,也要建立瓶裝。
--no-rebuild
如果公式指定了重新構建版本,則從生成的 DSL 中移除它。
--keep-old
如果公式指定了重新構建版本,則嘗試在生成的 DSL 中保留其值。
--json
將瓶裝信息寫入 JSON 文件,該文件可以用作 --merge
的值。
--merge
為公式生成更新的瓶裝塊,並可選地將其合併到公式文件中。 與公式名稱不同,需要使用使用 brew bottle --json
生成的 JSON 文件的路徑 formula
。
--write
將更改寫入公式文件。 除非使用 --no-commit
,否則將生成一個新的提交。
--no-commit
當與 --write
一起使用時,將在將更改寫入公式文件後不生成新的提交。
--only-json-tab
當與 --json
一起使用時,將該選項寫入 JSON 文件,但不寫入瓶裝。
--no-all-checks
不嘗試創建所有的瓶裝,也不停止無更改上傳。
--committer
以 git
的標準作者格式指定提交者的名稱和電子郵件。
--root-url
將指定的 URL
用作瓶裝的 URL 根,而不是使用 Homebrew 的默認值。
--root-url-using
使用指定的下載策略類來下載瓶裝的 URL,而不是使用 Homebrew 的默認值。
bump
[options
] [formula
|cask
…]顯示過時的 brew 公式及最新可用版本。如果返回的當前版本和 livecheck 版本不同,或者在查詢特定公式時,還會顯示是否已開啟拉取請求以及相應的 URL。
--full-name
以完全合格的名稱列印公式/桶。
--no-pull-requests
不從 GitHub 檢索拉取請求。
--formula
僅檢查公式。
--cask
僅檢查桶。
--tap
檢查給定的 tap 內的公式和桶,指定為 user
/
repo
。
--installed
檢查目前已安裝的公式和桶。
--no-fork
不嘗試 fork 存儲庫。
--open-pr
如果尚未開啟,則打開新版本的拉取請求。
--limit
限制返回的套件結果數量。
--start-with
套件結果列表應按字母順序跟隨的字母或單詞。
bump-cask-pr
[options
] cask
建立一個拉取請求以更新 cask
到新版本。
如果用戶未提供值,將儘力確定 SHA-256
。
-n
, --dry-run
打印將要執行的操作,而不是實際執行。
--write-only
執行預期的文件修改,而不採取任何 Git 操作。
--commit
當與 --write-only
一起使用時,在將更改寫入 cask 文件後生成新的提交。
--no-audit
在打開 PR 之前不運行 brew audit
。
--no-style
在打開 PR 之前不運行 brew style --fix
。
--no-browse
打印拉取請求 URL,而不是在瀏覽器中打開。
--no-fork
不嘗試 fork 存儲庫。
--version
指定 cask 的新版本。
--version-arm
為 ARM 架構指定新的 cask 版本。
--version-intel
為 Intel 架構指定新的 cask 版本。
--message
將 message
添加到默認的拉取請求消息。
--url
指定新下載的 URL
。
--sha256
指定新下載的 SHA-256
校驗和。
--fork-org
使用指定的 GitHub 組織進行分叉。
bump-formula-pr
[選項
] [公式
]建立一個拉取請求以更新 公式
的新 URL
或新標籤。
如果指定了一個 URL
,則新下載的 SHA-256
校驗和也應該被指定。如果用戶未提供,將盡力確定 SHA-256
。
如果指定了一個 標籤
,則應該同時指定與該標籤對應的 Git 提交 revision
。如果用戶未提供值,將盡力確定 revision
。
如果指定了一個 版本
,並且用戶未提供 URL
和 SHA-256
或 標籤
和 revision
的值,將盡力確定 URL
和 SHA-256
或 標籤
和 revision
。
注意:此命令無法將一個公式從 URL 和 SHA-256 格式規範轉換為標籤和修訂版本格式規範,反之亦然。它必須使用公式已經使用的任何格式規範。
-n
, --dry-run
打印將要執行的操作,而不是實際執行。
--write-only
執行預期的文件修改,而不採取任何 Git 操作。
--commit
當與 --write-only
一起使用時,在將更改寫入公式文件後生成新的提交。
--no-audit
在打開 PR 之前不運行 brew audit
。
--strict
在開啟 PR 前運行 brew audit --strict
。
--online
在開啟 PR 前運行 brew audit --online
。
--no-browse
打印拉取請求 URL,而不是在瀏覽器中打開。
--no-fork
不嘗試 fork 存儲庫。
--mirror
使用指定的 URL
作為鏡像 URL。如果 URL
是一個逗號分隔的 URL 列表,將添加多個鏡像。
--fork-org
使用指定的 GitHub 組織進行分叉。
--version
使用指定的 版本
覆蓋從 URL 或標籤解析的值。請注意,--version=0
可用於從公式中刪除已經變得多餘的版本覆蓋。
--message
將 message
添加到默認的拉取請求消息。
--url
指定新下載的 URL
。如果指定了 URL
,則新下載的 SHA-256
校驗和也應該被指定。
--sha256
指定新下載的 SHA-256
校驗和。
--tag
指定公式的新的 git 提交 tag
。
--revision
指定與指定的 git tag
或指定的 version
對應的新的提交 revision
。
-f
, --force
如果未指定 --mirror
,則移除所有鏡像。
--install-dependencies
安裝更新資源所需的遺失依賴項。
--python-package-name
當查找 formula
的 Python 資源時使用指定的 package-name
。如果未指定包名,則將從公式的穩定 URL 推斷。
--python-extra-packages
在查找資源時包括這些額外的 Python 包。
--python-exclude-packages
在查找資源時排除這些 Python 包。
bump-revision
[options
] formula
[…]創建一個提交以增加 formula
的 revision。如果沒有 revision,將添加“revision 1”。
-n
, --dry-run
打印將要執行的操作,而不是實際執行。
--remove-bottle-block
除了增加 revision 外,還移除瓶塞塊。
--write-only
執行預期的文件修改,而不採取任何 Git 操作。
--message
將 message
追加到默認的提交訊息中。
bump-unversioned-casks
[options
] cask
|tap
[…]檢查給定 tap
中所有具有未版本化 URL 的桶 (casks) 是否有更新。
-n
, --dry-run
除了緩存狀態和開啟拉取請求外,執行所有操作。
--limit
最大運行時間(以分鐘為單位)。
--state-file
用於緩存狀態的檔案。
cat
[--formula
] [--cask
] formula
|cask
[…]顯示 formula
或 cask
的來源。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
contributions
[–user=email|username
] [--repositories
=
] [--csv
]整理對 Homebrew 存儲庫的貢獻。
--repositories
指定要搜索的存儲庫列表,以逗號分隔。支持的存儲庫包括: brew
, core
, cask
, aliases
, bundle
, command-not-found
, test-bot
, services
和 cask-fonts
。若省略此標誌,或指定 --repositories=primary
,則僅搜索主要存儲庫: brew,core,cask。指定 --repositories=all
,則搜索所有存儲庫。
--from
指定開始搜索貢獻的日期(ISO-8601 格式)。若省略此標誌,則搜索過去一年的貢獻。
--to
指定停止搜索貢獻的日期(ISO-8601 格式)。
--user
指定要查找貢獻的 GitHub 用戶名或電子郵件地址,以逗號分隔。若省略此標誌,則搜索維護者。
--csv
打印在指定時間段內各個存儲庫的貢獻 CSV。
create
[選項
] URL
生成可下載文件的公式或(與 --cask
)cask 在 URL
,並在編輯器中打開。Homebrew 將嘗試自動推斷公式名稱和版本,但如果失敗,您將不得不創建自己的模板。wget
公式提供了一個簡單的示例。有關完整的 API,請參閱: https://rubydoc.brew.sh/Formula
--autotools
為 Autotools 風格構建創建基本模板。
--cask
為 cask 創建基本模板。
--cmake
為 CMake 風格構建創建基本模板。
--crystal
為 Crystal 構建創建基本模板。
--go
為 Go 構建創建基本模板。
--meson
為 Meson 風格構建創建基本模板。
--node
為 Node 構建創建基本模板。
--perl
為 Perl 構建創建基本模板。
--python
為 Python 構建創建基本模板。
--ruby
為 Ruby 構建創建基本模板。
--rust
為 Rust 構建創建基本模板。
--no-fetch
Homebrew 將不會將 URL
下載至快取,因此也不會為您新增其 SHA-256 到方程式中,也不會檢查 GitHub API 以獲取 GitHub 專案(以填寫其描述和主頁)。
--HEAD
指示 URL
指向套件的存儲庫而不是文件。
--set-name
明確設置新方程式或 Cask 的 name
。
--set-version
明確設置新方程式或 Cask 的 version
。
--set-license
明確設置新方程式的 license
。
--tap
在給定的 tap 中生成新方程式,指定為 user
/
repo
。
-f
, --force
忽略不允許的方程式名稱和與別名衝突的名稱的錯誤。
dispatch-build-bottle
[options
] formula
[…]使用 GitHub Actions 為這些方程式構建瓶子。
--tap
目標 tap 存儲庫(默認為 homebrew/core
)。
--timeout
構建超時(以分鐘為單位,默認為 60 分鐘)。
--issue
如果指定,則在此問題編號下失敗時發表評論。
--macos
應為其構建瓶子的 macOS 版本(或逗號分隔的版本列表)。
--workflow
調度指定的工作流(默認為 dispatch-build-bottle.yml
)。
--upload
上傳構建的瓶子。
--linux
為 Linux 調度瓶子(使用 GitHub Runner)。
--linux-self-hosted
為 Linux 調度瓶子(使用自託管 Runner)。
--linux-wheezy
在 Linux 上使用 Debian Wheezy 容器來構建瓶子。
edit
[options
] [formula
|cask
|tap
…]在由 EDITOR
或 HOMEBREW_EDITOR
設定的編輯器中打開一個 formula
、cask
或 tap
,如果沒有提供參數,則打開 Homebrew 存儲庫進行編輯。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
--print-path
打印要編輯的文件路徑,而不打開編輯器。
extract
[--version=
] [--force
] formula
tap
查找存儲庫歷史記錄以找到最新版本的 formula
,並在 tap
中創建一個副本。具體來說,該命令將在 tap
/Formula/
formula
@
version
.rb
創建新的 formula 文件。如果尚未安裝/克隆 tap,則在繼續之前嘗試安裝/克隆 tap。要從不是 homebrew/core
的 tap 中提取 formula,請使用其完全合格的形式:user
/
repo
/
formula
。
--version
提取指定的 version
的 formula
,而不是最新的版本。
-f
, --force
如果目標 formula 已經存在,則覆蓋它。
formula
formula
[…]顯示 formula
的路徑。
generate-cask-api
[--dry-run
]為 https://formulae.brew.sh 生成 homebrew/cask
的 API 資料檔案。生成的檔案將寫入目前的目錄。
-n
, --dry-run
生成 API 資料但不將其寫入檔案。
generate-formula-api
[--dry-run
]為 https://formulae.brew.sh 生成 homebrew/core
的 API 資料檔案。生成的檔案將寫入目前的目錄。
-n
, --dry-run
生成 API 資料但不將其寫入檔案。
generate-man-completions
生成 Homebrew 的手冊頁和 shell 自動完成。
install-bundler-gems
[--groups=
] [--add-groups=
]安裝 Homebrew 的 Bundler gems。
--groups
安裝指定的以逗號分隔的 gem 群組列表(預設值為上次使用的)。取代之前安裝的群組。
--add-groups
除了已經安裝的群組外,安裝指定的以逗號分隔的 gem 群組列表。
irb
[--examples
] [--pry
]進入互動式的 Homebrew Ruby shell。
--examples
顯示幾個範例。
--pry
使用 Pry 而不是 IRB。如果設置了 HOMEBREW_PRY
,則默認使用 Pry。
linkage
[options
] [installed_formula
…]檢查給定的 formula
kegs 的庫連結。如果未提供 formula
,則檢查所有 kegs。在未安裝的公式上運行時引發錯誤。
--test
僅顯示缺少的庫並且如果發現任何缺少的庫則以非零狀態退出。
--strict
如果發現具有連結的任何未聲明依賴項,則以非零狀態退出。
--reverse
對於 keg 引用的每個庫,打印其 dylib 路徑,然後是鏈接到它的二進位文件。
--cached
打印存儲在 HOMEBREW_CACHE
中的緩存連結值,由上一次的 brew linkage
運行設置。
livecheck
, lc
[options
] [formula
|cask
…]從上游檢查公式和/或桶的更新版本。 如果沒有傳遞公式或桶的參數,則要檢查的公式和桶的清單將從 HOMEBREW_LIVECHECK_WATCHLIST
或〜/ .homebrew/livecheck_watchlist.txt
中提取。
--full-name
列印具有完全限定名稱的公式和桶。
--tap
檢查給定的 tap 內的公式和桶,指定為 user
/
repo
。
--eval-all
評估所有可用的公式和桶,無論是否安裝,以檢查它們。
--installed
檢查目前已安裝的公式和桶。
--newer-only
僅在最新版本新於公式/桶時顯示最新版本。
--json
以 JSON 格式輸出信息。
-r
,--resources
也檢查公式的資源。
-q
, --quiet
抑制警告,不對 JSON 輸出打印進度條。
--formula
僅檢查公式。
--cask
僅檢查桶。
--extract-plist
啟用使用 ExtractPlist 策略檢查多個桶。
pr-automerge
[options
]使用 brew pr-publish
查找可以自動合併的拉取請求。
--tap
目標 tap 存儲庫(默認為 homebrew/core
)。
--workflow
用於 brew pr-publish
的工作流文件。
--with-label
拉取請求必須具有此標籤。
--without-labels
拉取請求不得具有這些標籤(默認:不要合併
,新公式
,自動合併跳過
,預發布
,CI-published-bottle-commits
)。
--without-approval
拉取請求不需要審批即可合併。
--publish
在匹配的拉取請求上運行 brew pr-publish
。
--autosquash
指示 brew pr-publish
自動重新格式化和重新編寫拉取請求中的提交以符合首選格式。
--ignore-failures
包括具有失敗狀態檢查的拉取請求。
pr-publish
[options
] pull_request
[…]使用 GitHub Actions 為拉取請求發布瓶子。 需要對存儲庫進行寫入訪問。
--autosquash
如果目標桶支持,則自動重新格式化和重新編寫提交以符合我們的首選格式。
--large-runner
在大型運行器上運行上傳作業。
--branch
從哪個分支使用工作流程(默認:master
)。
--message
自動擠壓版本增加、刪除和重建時要包含的消息。
--tap
目標 tap 存儲庫(默認為 homebrew/core
)。
--workflow
目標工作流程文件名(默認:publish-commit-bottles.yml
)。
pr-pull
[選項
] pull_request
[…]從具有由 GitHub Actions 生成的產物的拉取請求下載並發佈瓶子,並應用瓶子提交。需要對存儲庫具有寫訪問權限。
--no-upload
下載瓶子但不上傳它們。
--no-commit
上傳之前不生成新的提交。
--no-cherry-pick
不要從拉取請求分支挑選提交。
-n
, --dry-run
打印將要執行的操作,而不是實際執行。
--clean
不要修改拉取請求中的提交。
--keep-old
如果公式指定了重新構建版本,則嘗試在生成的 DSL 中保留其值。
--autosquash
自動重新格式化和改寫拉取請求中的提交為我們偏好的格式。
--branch-okay
如果拉取到存儲庫默認分支以外的分支,不要警告(對測試很有用)。
--resolve
當修補程序應用失敗時,保持進行中並允許用戶解決,而不是中止。
--warn-on-upload-failure
如果瓶子上傳失敗,發出警告而不是引發錯誤。用於修復之前失敗的瓶子上傳。
--retain-bottle-dir
不清理瓶子的 tmp 目錄,以便以後可以使用它。
--committer
以 git
的標準作者格式指定提交者的名稱和電子郵件。
--message
自動擠壓版本增加、刪除和重建時要包含的消息。
--artifact-pattern
下載具有指定模式的產物(默認:bottles{,_*}
)。
--tap
目標 tap 存儲庫(默認為 homebrew/core
)。
--root-url
將指定的 URL
用作瓶裝的 URL 根,而不是使用 Homebrew 的默認值。
--root-url-using
使用指定的下載策略類來下載瓶裝的 URL,而不是使用 Homebrew 的默認值。
--workflows
從指定的工作流程檔案檢索產物(默認:tests.yml
)。可以使用逗號分隔的列表來包含多個工作流程。
--ignore-missing-artifacts
可以忽略尚未運行的工作流程的逗號分隔列表。
pr-upload
[選項
]應用瓶子提交並將瓶子發布到主機。
--keep-old
如果公式指定了重新構建版本,則嘗試在生成的 DSL 中保留其值。
-n
, --dry-run
打印將要執行的操作,而不是實際執行。
--no-commit
上傳之前不生成新的提交。
--warn-on-upload-failure
如果瓶子上傳失敗,發出警告而不是引發錯誤。用於修復之前失敗的瓶子上傳。
--upload-only
在上傳之前跳過運行brew bottle
。
--committer
以 git
的標準作者格式指定提交者的名稱和電子郵件。
--root-url
將指定的 URL
用作瓶裝的 URL 根,而不是使用 Homebrew 的默認值。
--root-url-using
使用指定的下載策略類來下載瓶裝的 URL,而不是使用 Homebrew 的默認值。
prof
[--stackprof
] 命令
[…]使用 Ruby 分析器運行 Homebrew。例如,brew prof readall
。
--stackprof
使用 stackprof
而不是默認的 ruby-prof
。
release
[--major
] [--minor
]使用適當的版本號和發布注意事項創建一個新的草稿 Homebrew/brew 發布。
默認情況下,brew release
將增加補丁版本號。傳遞 --major
或 --minor
以分別增加主要或次要版本號。如果上一個主要或次要版本的發布距今不足一個月,則該命令將失敗。
注意:需要對 Homebrew/brew 存儲庫具有寫訪問權限。
--major
建立一個重要版本。
--次要
建立一個次要版本。
rubocop
安裝、配置並運行 Homebrew 的 rubocop
。
ruby
[選項
] (-e
文本
|文件
)運行一個帶有 Homebrew 库的 Ruby 實例。例如,brew ruby -e "puts :gcc.f.deps"
或 brew ruby script.rb
。
例如運行 brew ruby -- --version
以傳遞任意參數給 ruby
。
-r
使用 require
載入一個庫。
-e
執行給定的文本字符串作為腳本。
rubydoc
[--only-public
] [--open
]生成 Homebrew 的 RubyDoc 文檔。
--only-public
僅生成公共 API 文檔。
--open
在瀏覽器中打開生成的文檔。
sh
[--env=
] [--cmd=
] [文件
]進入 Homebrew 的構建環境的交互式 shell。使用經過多年考驗的構建邏輯來幫助您的 ./configure && make && make install
甚至您的 gem install
成功。如果您僅在僅安裝了 Xcode 的配置中運行 Homebrew,尤其方便,因為它會將像 make
這樣的工具添加到您的 PATH
中,否則構建系統將找不到。
--env
當傳遞 std
時,使用標準 PATH
而不是超級環境。
-c
, --cmd
在非交互式 shell 中執行命令。
style
[選項
] [文件
|tap
|formula
|cask
…]檢查 Homebrew 樣式指南的程式或文件的符合性。
不能結合 文件
、tap
和 formula
的列表。如果未提供任何,style
將對整個 Homebrew 库進行樣式檢查,包括核心代碼和所有公式。
--fix
使用 RuboCop 的自動修正功能自動修復樣式違規。
--reset-cache
重置 RuboCop 快取。
--formula
將所有命名參數視為公式。
--cask
將所有命名參數視為桶。
--only-cops
指定以逗號分隔的 cops
列表,僅檢查列出的 RuboCop 檢查項目是否違規。
--except-cops
指定以逗號分隔的 cops
列表,跳過檢查列出的 RuboCop 檢查項目是否違規。
tap-new
[選項
] 使用者
/
存儲庫
生成新 tap 的模板文件。
--no-git
不要為 tap 初始化 Git 存儲庫。
--pull-label
準備拉取的拉取請求的標籤名稱(默認值:pr-pull
)。
--branch
初始化 Git 存儲庫並設置 GitHub Actions 工作流程,使用指定的分支名稱(默認值:main
)。
--github-packages
將瓶裝文件上傳到 GitHub Packages。
test
[選項
] 已安裝的公式
[…]運行已安裝公式提供的測試方法。通常情況下,它應該通知用戶,如果安裝的公式有問題。
示例: brew install jruby && brew test jruby
-f
, --force
即使它們未連接,也要測試公式。
--HEAD
測試公式的 HEAD 版本。
--keep-tmp
保留為測試創建的臨時文件。
--retry
如果測試失敗,則重試。
tests
[選項
]運行 Homebrew 的單元測試和集成測試。
--coverage
生成代碼覆蓋報告。
--generic
僅運行與操作系統無關的測試。
--online
包括使用 GitHub API 和使用任何官方外部命令的任何 tap 的測試。
--debug
啟用使用 ruby/debug
,或顯示標準 odebug
輸出的調試。
--changed
僅在從主分支更改的文件上運行測試。
--fail-fast
在第一次失敗的測試時提前退出。
--only
僅運行 <test_script>_spec.rb
。附加 :<line_number>
將從特定行開始。
--profile
按順序運行測試套件,以找出最慢的 n
個測試。
--seed
使用指定的 value
而不是隨機種子隨機測試。
typecheck
, tc
[選項
]使用 Sorbet 檢查類型檢查錯誤。
--fix
自動修復類型錯誤。
-q
, --quiet
消除所有非關鍵錯誤。
--update
更新 RBI 檔案。
--update-all
更新所有 RBI 檔案而不僅僅是更新的寶石。
--suggest-typed
嘗試升級 typed
符號。
--dir
類型檢查特定目錄中的所有檔案。
--file
對單個檔案進行類型檢查。
--ignore
忽略包含給定字串的輸入檔案(相對於傳遞給 Sorbet 的輸入路徑)。
unbottled
[options
] [formula
…]顯示配方的未瓶裝依賴項。
--tag
使用指定的瓶標籤(例如 big_sur
)而不是當前的作業系統。
--dependents
跳過獲取分析數據,並根據依賴項數量進行排序。
--total
打印未瓶裝和總計配方的數量。
--lost
打印上週在 homebrew/core
中遺失瓶子的提交。
--eval-all
評估所有可用的配方和桶,無論是否已安裝,以進行檢查。如果設置了 HOMEBREW_EVAL_ALL
,則隱含。
unpack
[options
] formula
[…]將 formula
的源代碼文件解壓到當前工作目錄的子目錄中。
--destdir
在由 path
命名的目錄中創建子目錄。
--patch
將 formula
的補丁應用到解壓後的源代碼上。
-g
, --git
在解壓後的源代碼中初始化 Git 存儲庫。這對於為軟件創建補丁非常有用。
-f
, --force
如果目標目錄已存在,則覆蓋它。
update-license-data
在 Homebrew 存儲庫中更新 SPDX 授權數據。
update-maintainers
在 Homebrew/brew
README 中更新維護人員列表。
update-python-resources
[options
] formula
[…]更新 formula
中 PyPI 資源塊的版本。
-p
, --print-only
不要改變 formula
,而是列印更新後的資源區塊。
-s
, --silent
抑制任何輸出。
--ignore-non-pypi-packages
如果 formula
不是 PyPI 套件,則不要失敗。
--install-dependencies
安裝更新資源所需的遺失依賴項。
--version
在為 formula
查找資源時使用指定的 version
。如果未指定版本,將使用 formula
的當前版本。
--package-name
在為 formula
查找資源時使用指定的 package-name
。如果未指定套件名稱,將從公式的穩定 URL 推斷。
--extra-packages
在查找資源時包括這些附加套件。
--exclude-packages
在查找資源時排除這些套件。
update-sponsors
更新 Homebrew/brew
自述文件中的 GitHub 贊助者清單。
update-test
[options
]使用新的存儲庫克隆運行 brew update
測試。如果未傳遞任何選項,將使用 origin/master
作為起始提交。
--to-tag
將 HOMEBREW_UPDATE_TO_TAG
設置為測試在標籤之間更新。
--keep-tmp
保留包含新存儲庫克隆的臨時目錄。
--commit
使用指定的 commit
作為起始提交。
--before
使用指定日期的提交作為起始提交。
vendor-gems
[--update=
] [--no-commit
]安裝並提交 Homebrew 的 vendored gems。
--update
將指定的 vendored gems 更新到最新版本。
--no-commit
完成後不生成新的提交。
這些選項適用於使用 --cask
開關的 install
、reinstall
和 upgrade
子命令。
--appdir
應用程式目標位置(預設:/Applications
)。
--keyboard-layoutdir
鍵盤佈局目標位置(預設:/Library/Keyboard Layouts
)。
--colorpickerdir
顏色選擇器目標位置(預設:~/Library/ColorPickers
)。
--prefpanedir
偏好設定面板目標位置(預設:~/Library/PreferencePanes
)。
--qlplugindir
快速查看插件目標位置(預設:~/Library/QuickLook
)。
--mdimporterdir
Spotlight 插件目標位置(預設:~/Library/Spotlight
)。
--dictionarydir
字典目標位置(預設:~/Library/Dictionaries
)。
--fontdir
字型目標位置(預設:~/Library/Fonts
)。
--servicedir
服務目標位置(預設:~/Library/Services
)。
--input-methoddir
輸入法目標位置(預設:~/Library/Input Methods
)。
--internet-plugindir
網路插件目標位置(預設:~/Library/Internet Plug-Ins
)。
--audio-unit-plugindir
音頻單元插件目標位置(預設:~/Library/Audio/Plug-Ins/Components
)。
--vst-plugindir
VST 插件目標位置(預設:~/Library/Audio/Plug-Ins/VST
)。
--vst3-plugindir
VST3 插件目標位置(預設:~/Library/Audio/Plug-Ins/VST3
)。
--screen-saverdir
螢幕保護程式目標位置(預設:~/Library/Screen Savers
)。
--language
用於 cask 安裝的偏好語言代碼列表,以逗號分隔。使用第一個匹配的語言,否則恢復為 cask 的默認語言。默認值為系統語言。
這些選項適用於多個子命令。
-d
, --debug
顯示任何調試信息。
-q
, --quiet
使一些輸出更安靜。
-v
, --verbose
使一些輸出更詳細。
-h
,--help
顯示此消息。
alias
[alias
… | alias
=command
]顯示現有的別名。如果未給出別名,則打印整個列表。
--編輯
在文本編輯器中編輯別名。可以同時打開一個或所有別名。如果給定的別名不存在,它將被預先填充模板。
bundle
[子命令
]Homebrew、Homebrew Cask、Mac App Store、Whalebrew 和 Visual Studio Code 的非 Ruby 依賴包管理工具。
brew bundle
[install
]安裝並(默認情況下)升級Brewfile
中的所有依賴項。
您可以使用--file
參數或設置HOMEBREW_BUNDLE_FILE
環境變量來指定Brewfile
的位置。
您可以通過將一個或多個以下環境變量的值以空格分隔來跳過依賴項的安裝:HOMEBREW_BUNDLE_BREW_SKIP
、HOMEBREW_BUNDLE_CASK_SKIP
、HOMEBREW_BUNDLE_MAS_SKIP
、HOMEBREW_BUNDLE_WHALEBREW_SKIP
、HOMEBREW_BUNDLE_TAP_SKIP
。
brew bundle
將在與Brewfile
相同的目錄中輸出Brewfile.lock.json
,如果所有依賴項都安裝成功。這包含了依賴項和系統狀態信息,可用於調試brew bundle
的失敗以及複製“上次已知良好構建”狀態。您可以通過設置HOMEBREW_BUNDLE_NO_LOCK
環境變量或傳遞--no-lock
選項來選擇退出此行為。您可能希望將此文件檢入與您的Brewfile
相同的版本控制系統中(或者如果您希望依賴於來自本地機器的調試信息,則確保您的版本控制系統忽略它)。
brew bundle dump
將所有已安裝的 casks/formulae/images/taps 寫入當前目錄中的Brewfile
。
brew bundle cleanup
卸載Brewfile
中不存在的所有依賴項。
這個工作流對於定期安裝大量 formulae 的維護人員或測試人員很有用。
brew bundle check
檢查Brewfile
中的所有依賴項是否已安裝。
如果一切都是最新的,這將提供一個成功的退出代碼,使其對腳本編寫很有用。
brew bundle list
列出在 Brewfile
中存在的所有依賴項。
默認情況下,只會列出 Homebrew 公式依賴項。
brew bundle exec
command
在基於 Brewfile
依賴項的隔離構建環境中運行外部命令。
此經過清理的構建環境會忽略未請求的依賴項,確保您在 Brewfile
中未指定的事項不會被像 bundle install
、npm install
等命令捕獲。它還會添加編譯器標誌,這將有助於找到像 openssl
、icu4c
等專用庫依賴項。
--file
從此位置讀取 Brewfile
。使用 --file=-
進行 stdin/stdout 管道。
--global
從 ~/.Brewfile
或設置的 HOMEBREW_BUNDLE_FILE_GLOBAL
環境變量中讀取 Brewfile
。
-v
, --verbose
install
以運行命令的輸出形式顯示輸出。 check
列出所有缺失的依賴項。
--no-upgrade
install
不會在過時的依賴項上運行 brew upgrade
。請注意,如果需要,它們仍可以通過 brew install
升級。
-f
, --force
install
使用 --force
/--overwrite
運行。 dump
覆蓋現有的 Brewfile
。 cleanup
實際執行其清理操作。
--cleanup
install
執行清理操作,與運行 cleanup --force
相同。如果設置了 HOMEBREW_BUNDLE_INSTALL_CLEANUP
,且傳遞了 --global
,則默認啟用此操作。
--no-lock
install
不會輸出 Brewfile.lock.json
。
--all
list
所有依賴項。
--formula
list
Homebrew 公式依賴項。
--cask
list
Homebrew cask 依賴項。
--tap
list
Homebrew tap 依賴項。
--mas
列出
Mac App Store 依賴。
--whalebrew
列出
Whalebrew 依賴。
--vscode
列出
VSCode 擴展。
--描述
dump
在每一行上方添加描述註釋,除非依賴項目沒有描述。如果設置了 HOMEBREW_BUNDLE_DUMP_DESCRIBE
,則默認啟用此功能。
--無重啟
dump
不將 restart_service
添加到公式行。
--zap
cleanup
使用 zap
命令而不是 uninstall
來清除 Cask。
command-not-found-init
打印設置命令找不到的鉤子的說明。如果輸出不是到 tty,則為您的 shell 打印適當的處理程序腳本。
services
[子命令
]使用 macOS 的 launchctl
(1) 守護程序管理器或 Linux 的 systemctl
(1) 服務管理器管理後台服務。
如果傳遞了 sudo
,則在 /Library/LaunchDaemons
//usr/lib/systemd/system
(在啟動時)上操作。否則,在 ~/Library/LaunchAgents
/~/.config/systemd/user
(在登錄時)上操作。
sudo
] brew services
[列表
](--json
)(--調試
)列出當前用戶(或 root)的所有受管理服務的信息。如果使用 --debug
運行,則提供來自 Homebrew 和 launchctl
(1) 或 systemctl
(1) 的更多輸出。
sudo
] brew services info
(公式
|--all
|--json
)列出當前用戶(或 root)的所有受管理服務。
sudo
] brew services run
(公式
|--all
)運行服務 公式
而不註冊為登錄(或啟動)時啟動。
sudo
] brew services start
(formula
|--all
|--file=
)立即啟動服務 formula
並註冊以在登錄時(或開機時)啟動。
sudo
] brew services stop
(formula
|--all
)立即停止服務 formula
並取消其在登錄時(或開機時)的啟動註冊。
sudo
] brew services kill
(formula
|--all
)立即停止服務 formula
,但保留其在登錄時(或開機時)的啟動註冊。
sudo
] brew services restart
(formula
|--all
)停止(如果需要)並立即啟動服務 formula
,並註冊以在登錄時(或開機時)啟動。
sudo
] brew services cleanup
移除所有未使用的服務。
--file
使用此位置的服務文件來 start
服務。
--sudo-service-user
在 macOS 上以 root 身份運行時,將服務運行為此用戶。
--all
對所有服務執行 subcommand
。
--json
以 JSON 格式輸出。
--no-wait
不等待 stop
完成停止服務。
test-bot
[options
] [formula
]測試 Homebrew 對 tap(Git 存儲庫)的完整生命周期更改。例如,對於更改 formula 的 GitHub Actions 拉取請求,brew test-bot
將確保系統已清理並設置為測試 formula,安裝 formula,對其運行各種測試和檢查,打包(封裝)二進制文件並測試依賴它的 formula 以確保這些更改不會破壞它們。
僅支持 GitHub Actions 作為 CI 提供者。這是因為 Homebrew 使用 GitHub Actions,並且可以免費在 macOS 和 Linux 工作器上公開和私有使用。
--dry-run
打印將要執行的操作,而不是實際執行。
--cleanup
清除 Homebrew 目錄中的所有狀態。請謹慎使用!
--skip-setup
不檢查本地系統是否設置正確。
--build-from-source
從源代碼構建而不是構建瓶子。
--build-dependents-from-source
從源代碼構建相依項目而不是測試瓶子。
--junit
生成 JUnit XML 測試結果文件。
--keep-old
運行 brew bottle --keep-old
以為單個平台構建新的瓶子。
--skip-relocation
運行 brew bottle --skip-relocation
以構建不需要重新定位的新瓶子。
--only-json-tab
運行 brew bottle --only-json-tab
以構建不包含標籤的新瓶子。
--local
要求 Homebrew 在 ./logs/
下寫詳細日誌,並將 $HOME
設置為 ./home/
--tap
使用給定 tap 的 Git 存儲庫。默認為用於語法檢查的核心 tap。
--fail-fast
在失敗的步驟上立即退出。
-v
, --verbose
實時打印測試步驟輸出。具有將輸出作為原始字節而不是重新編碼為 UTF-8 的副作用。
--test-default-formula
在不構建 tap 且未指定其他公式時使用默認測試公式。
--root-url
將指定的 URL
用作瓶裝的 URL 根,而不是使用 Homebrew 的默認值。
--git-name
將 Git 作者/提交者名稱設置為給定的名稱。
--git-email
將 Git 作者/提交者電子郵件設置為給定的電子郵件。
--publish
發布上傳的瓶子。
--skip-online-checks
不要將 --online
傳遞給 brew audit
,並跳過 brew livecheck
。
--skip-new
不要將 --new
傳遞給新公式的 brew audit
。
--skip-new-strict
不要將 --strict
傳遞給新公式的 brew audit
。
--skip-dependents
不測試任何相依項目。
--skip-livecheck
不測試 livecheck。
--skip-recursive-dependents
只測試直接相依項目。
--skip-checksum-only-audit
不審核僅檢查碼的更改。
--skip-stable-version-audit
不審核穩定版本。
--skip-revision-audit
不審核修訂版。
--only-cleanup-before
僅運行預清理步驟。需要 --cleanup
。
--only-setup
僅運行本地系統設置檢查步驟。
--only-tap-syntax
僅執行 tap 語法檢查步驟。
--stable
僅在穩定的 brew 上執行 tap 語法檢查。
--only-formulae
僅執行配方步驟。
--only-formulae-detect
僅執行配方偵測步驟。
--only-formulae-dependents
僅執行配方相依步驟。
--only-bottles-fetch
僅執行瓶子取得步驟。此選擇性的上傳後測試檢查所有瓶子是否正確上傳。除非有要求,否則不會執行,且只需要在單一機器上執行。要測試的瓶子提交必須位於被測試的分支上。
--only-cleanup-after
僅執行後清理步驟。需要 --cleanup
。
--testing-formulae
使用這些測試配方,而不是執行配方偵測步驟。
--added-formulae
使用這些新增配方,而不是執行配方偵測步驟。
--deleted-formulae
使用這些刪除的配方,而不是執行配方偵測步驟。
--skipped-or-failed-formulae
使用這些在配方步驟中被跳過或失敗的配方作為配方相依步驟。
unalias
alias
[…]移除別名。
which-formula
[--explain
] command
[…]顯示提供給定命令的配方。
--explain
輸出安裝其中一個提供的配方來獲取命令的說明。
which-update
[options
] [database
]為 brew which-formula
更新資料庫。
--stats
列印有關資料庫內容的統計資訊(命令和配方數量,缺少的配方清單)。
--commit
使用 git
提交更改。
--update-existing
使用過時的配方版本更新資料庫項目。
--install-missing
安裝並更新資料庫中缺少且沒有瓶子的配方。
--eval-all
評估所有已安裝的 tap,而不僅限於核心 tap。
--max-downloads
指定要下載和更新的最大公式數量。
Homebrew,就像git
(1)一樣,支援外部命令。這些是可執行的腳本,位於PATH
中的某個位置,命名為brew-
cmdname
或brew-
cmdname
.rb
,可以像brew
cmdname
一樣調用。這允許您創建自己的命令而不修改Homebrew的內部結構。
有關創建自己命令的說明可以在文件中找到:https://homebrew.dev.org.tw/External-Commands
許多Homebrew命令接受一個或多個formula
參數。這些參數可以採取幾種不同的形式
公式的名稱:例如git
、node
、wget
。
從tap的公式的完全限定名稱:有時,來自tap存儲庫的公式可能與homebrew/core
中的公式衝突。您仍然可以通過使用特殊語法訪問這些公式,例如homebrew/dupes/vim
或homebrew/versions/node4
。
任意文件:Homebrew可以從本地路徑安裝公式。它可以指向公式文件或瓶。將相對路徑的前綴設置為./
,以防止它們被解釋為公式或tap名稱。
許多Homebrew桶命令接受一個或多個cask
參數。這些可以像上面指定公式
中描述的formula
參數一樣指定。
請注意,環境變數必須設置值才能被檢測到。例如,運行export HOMEBREW_NO_INSECURE_REDIRECT=1
而不僅僅是export HOMEBREW_NO_INSECURE_REDIRECT
。
HOMEBREW_*
環境變數也可以在Homebrew的環境文件中設置
/etc/homebrew/brew.env
(系統範圍)
$HOMEBREW_PREFIX/etc/homebrew/brew.env
(前綴特定)
$XDG_CONFIG_HOME/homebrew/brew.env
如果設置了$XDG_CONFIG_HOME
或否則$HOME/.homebrew/brew.env
(用戶特定)
使用者特定的環境檔案優先於前置特定檔案,而前置特定檔案優先於系統全域檔案(除非設定了 HOMEBREW_SYSTEM_ENV_TAKES_PRIORITY
,請參閱下文)。
請注意,這些檔案不支援Shell變數擴展,例如 $HOME
或命令執行,例如 $(cat file)
。
HOMEBREW_API_AUTO_UPDATE_SECS
每 HOMEBREW_API_AUTO_UPDATE_SECS
秒檢查Homebrew的API以獲取新的配方或桶資料。或者,完全禁用API自動更新檢查,使用 HOMEBREW_NO_AUTO_UPDATE
。
預設值: 450
。
HOMEBREW_API_DOMAIN
使用此URL作為Homebrew JSON API的下載鏡像。如果該URL的元數據文件暫時不可用,則將使用預設的API域作為備用鏡像。
預設值: https://formulae.brew.sh/api
。
HOMEBREW_ARCH
僅適用於Linux:將此值傳遞給表示編譯器 -march
選項的類型名稱。
預設值: native
。
HOMEBREW_ARTIFACT_DOMAIN
使用此值為所有下載URL(包括瓶子)添加前綴。例如,HOMEBREW_ARTIFACT_DOMAIN=https://127.0.0.1:8080
將導致URL為 https://example.com/foo.tar.gz
的配方從 https://example.com/foo.tar.gz
下載改為從 https://127.0.0.1:8080/https://example.com/foo.tar.gz
下載。然而,瓶子URL會將其域替換為此前綴。因此,例如 https://ghcr.io/v2/homebrew/core/gettext/manifests/0.21
將從 https://127.0.0.1:8080/v2/homebrew/core/gettext/manifests/0.21
下載。
HOMEBREW_AUTOREMOVE
如果設定了,調用 brew cleanup
和 brew uninstall
將自動刪除未使用的配方依賴項,並且如果未設置 HOMEBREW_NO_INSTALL_CLEANUP
,則 brew cleanup
將開始定期運行 brew autoremove
。
HOMEBREW_AUTO_UPDATE_SECS
在一些命令(例如 brew install
、brew upgrade
和 brew tap
)之前,每 HOMEBREW_AUTO_UPDATE_SECS
秒運行一次 brew update
。或者,完全禁用自動更新,使用 HOMEBREW_NO_AUTO_UPDATE
。
預設值: 86400
(24 小時),3600
(1 小時)若已執行開發者命令,或 300
(5 分鐘)若已設定 HOMEBREW_NO_INSTALL_FROM_API
。
HOMEBREW_BAT
若設定,使用 bat
作為 brew cat
命令。
HOMEBREW_BAT_CONFIG_PATH
將此用作 bat
配置檔案。
預設值: $BAT_CONFIG_PATH
。
HOMEBREW_BAT_THEME
將此用作語法高亮顯示的 bat
主題。
預設值: $BAT_THEME
。
HOMEBREW_BOOTSNAP
若設定,使用 Bootsnap 加速重複的 brew
呼叫。在 macOS 上使用 Homebrew 的內建、可重定位 Ruby 時無效(因為它不起作用)。
HOMEBREW_BOTTLE_DOMAIN
將此 URL 用作瓶子的下載鏡像。若該 URL 上的瓶子暫時不可用,將使用預設的瓶子域作為備用鏡像。例如,HOMEBREW_BOTTLE_DOMAIN=https://127.0.0.1:8080
將導致所有瓶子從前綴 https://127.0.0.1:8080/
下載。若在 HOMEBREW_BOTTLE_DOMAIN
上找不到瓶子,將從預設的瓶子域下載。
預設值: https://ghcr.io/v2/homebrew/core
。
HOMEBREW_BREW_GIT_REMOTE
將此 URL 用作 Homebrew/brew 的 git
(1)遠端。
預設值: https://github.com/Homebrew/brew
。
HOMEBREW_BROWSER
將此用作開啟專案主頁時的瀏覽器。
預設值: $BROWSER
或作業系統的預設瀏覽器。
HOMEBREW_CACHE
將此目錄用作下載快取。
預設值: macOS: $HOME/Library/Caches/Homebrew
,Linux: $XDG_CACHE_HOME/Homebrew
或 $HOME/.cache/Homebrew
。
HOMEBREW_CASK_OPTS
將這些選項附加到所有 cask
命令。支援所有 --*dir
選項、--language
、--require-sha
、--no-quarantine
和 --no-binaries
。例如,您可以將類似以下內容添加到您的 ~/.profile
、~/.bash_profile
或 ~/.zshenv
export HOMEBREW_CASK_OPTS="--appdir=~/Applications --fontdir=/Library/Fonts"
HOMEBREW_CLEANUP_MAX_AGE_DAYS
清理所有緩存文件,其修改日期早於指定的天數。
預設值: 120
天。
HOMEBREW_CLEANUP_PERIODIC_FULL_DAYS
若設定,brew install
、brew upgrade
和 brew reinstall
將在過了指定天數後清理所有配方。
預設值: 30
天。
HOMEBREW_COLOR
若設定,對非 TTY 輸出強制使用彩色輸出。
HOMEBREW_CORE_GIT_REMOTE
將此 URL 作為 Homebrew/homebrew-core 的 git
遠端。
預設值: https://github.com/Homebrew/homebrew-core
。
HOMEBREW_CURLRC
若設定為絕對路徑(即以 /
開頭),在呼叫 curl
(1) 時傳遞它作為 --config
。若設定但不是有效路徑,則不要傳遞 --disable
,以禁用 .curlrc
的使用。
HOMEBREW_CURL_PATH
僅適用於 Linux:將此值設置為新版本的 curl
可執行文件,供 Homebrew 使用。
預設值: curl
。
HOMEBREW_CURL_RETRIES
在呼叫 curl
(1) 時,傳遞給 --retry
的重試次數。
預設值: 3
。
HOMEBREW_CURL_VERBOSE
若設定,當呼叫 curl
(1) 時,傳遞 --verbose
。
HOMEBREW_DEBUG
若設定,總是假定在運行命令時使用 --debug
。
HOMEBREW_DEVELOPER
若設定,調整行為以使其對 Homebrew 開發人員(活躍或新手)更為相關,例如將警告轉換為錯誤。
HOMEBREW_DISABLE_LOAD_FORMULA
若設定,拒絕加載配方。當配方不可信時(例如在拉取請求中)很有用。
HOMEBREW_DISPLAY
在打開瀏覽器中的頁面時使用此 X11 顯示,例如使用 brew home
。主要在 Linux 上有用。
預設值: $DISPLAY
。
安裝時間顯示
如果設置,將在運行結束時打印每個配方的安裝時間。
DOCKER倉庫基本驗證令牌
使用此base64編碼的用戶名和密碼來驗證與代理GitHub Packages的Docker倉庫的身份。如果設置了 HOMEBREW_DOCKER_REGISTRY_TOKEN
,則將使用該令牌。
DOCKER倉庫令牌
使用此bearer令牌來與代理GitHub Packages的Docker倉庫進行驗證。優先於 DOCKER_REGISTRY_BASIC_AUTH_TOKEN
。
編輯器
在編輯單個配方或同一目錄中的多個配方時使用此編輯器。
注意: brew edit
將打開所有Homebrew文件和目錄作為不連續的文件。Visual Studio Code可以在項目模式下正確處理此操作,但許多編輯器在此情況下可能會出現奇怪的行為。
默認: $EDITOR
或 $VISUAL
。
評估所有
如果設置,brew
命令將評估所有配方和cask,執行它們的任意代碼,默認情況下無需 --eval-all
。需要對配方和cask描述進行緩存。
失敗日誌行數
在配方 system
失敗時輸出這麼多行輸出。
默認: 15
。
禁止的Cask
一個以空格分隔的Cask列表。如果Cask或其任何依賴項在此列表中,Homebrew將拒絕安裝該Cask。
禁止的配方
一個以空格分隔的配方列表。如果配方或其任何依賴項在此列表中,Homebrew將拒絕安裝該配方或Cask。
禁止的許可證
一個以空格分隔的許可證列表。如果配方或其任何依賴項具有此列表中的許可證,Homebrew將拒絕安裝該配方。
禁止的擁有者
設置了任何 HOMEBREW_FORBIDDEN_*
變量的人。
默認: you
。
禁止的擁有者聯繫方式
如有需要,如何聯繫 HOMEBREW_FORBIDDEN_OWNER
。
禁止的Tap
一個以空格分隔的Tap列表。如果配方或其任何依賴項在此列表中的Tap中,Homebrew將拒絕安裝該配方。
HOMEBREW_FORCE_BREWED_CA_CERTIFICATES
如果設置,始終使用由Homebrew安裝的 ca-certificates
而不是系統版本。如果系統版本太舊,則自動設置。
HOMEBREW_FORCE_BREWED_CURL
如果設置,始終使用由Homebrew安裝的 curl
(1) 而不是系統版本。如果系統版本的 curl
太舊,則自動設置。
HOMEBREW_FORCE_BREWED_GIT
如果設置,始終使用由Homebrew安裝的 git
(1) 而不是系統版本。如果系統版本的 git
太舊,則自動設置。
HOMEBREW_FORCE_VENDOR_RUBY
如果設置,即使系統版本的Ruby足夠新,始終使用Homebrew提供的、可重定位的Ruby版本。
HOMEBREW_FORMULA_BUILD_NETWORK
如果設置,控制對於公式構建的沙盒的網絡訪問。覆蓋任何在公式內使用DSL設置的控制。必須是 allow
或 deny
。如果沒有通過此環境變量或DSL使用設置值,則默認行為是 allow
。
HOMEBREW_FORMULA_POSTINSTALL_NETWORK
如果設置,控制對於公式安裝後的沙盒的網絡訪問。覆蓋任何在公式內使用DSL設置的控制。必須是 allow
或 deny
。如果沒有通過此環境變量或DSL使用設置值,則默認行為是 allow
。
HOMEBREW_FORMULA_TEST_NETWORK
如果設置,控制對於公式測試的沙盒的網絡訪問。覆蓋任何在公式內使用DSL設置的控制。必須是 allow
或 deny
。如果沒有通過此環境變量或DSL使用設置值,則默認行為是 allow
。
HOMEBREW_GITHUB_API_TOKEN
使用此個人訪問令牌進行GitHub API的操作,例如 brew search
。您可以在 https://github.com/settings/tokens 上創建一個。如果設置,GitHub將允許您進行更多的API請求。有關更多信息,請參閱:https://docs.github.com/en/rest/overview/rate-limits-for-the-rest-api
注意: Homebrew不需要任何權限範圍,但某些開發人員命令可能需要額外的權限。
HOMEBREW_GITHUB_PACKAGES_TOKEN
在訪問GitHub Packages Registry(存放瓶子的地方)時,使用此GitHub個人訪問令牌。
HOMEBREW_GITHUB_PACKAGES_USER
使用此用户名访问GitHub Packages Registry(可能存储瓶子的地方)。
HOMEBREW_GIT_EMAIL
将 Git 作者和提交者电子邮件设置为此值。
HOMEBREW_GIT_NAME
将 Git 作者和提交者名称设置为此值。
HOMEBREW_GIT_PATH
仅适用于 Linux:将此值设置为足够新的 git 可执行文件,以供 Homebrew 使用。
默认值:git
。
HOMEBREW_INSTALL_BADGE
在每个成功构建的安装摘要之前打印此文本。
默认值:“啤酒杯”表情符号。
HOMEBREW_LIVECHECK_WATCHLIST
当未传递公式参数给 brew livecheck
时,默认情况下要检查的公式列表。
默认值:$XDG_CONFIG_HOME/homebrew/livecheck_watchlist.txt
(如果设置了$XDG_CONFIG_HOME
)或$HOME/.homebrew/livecheck_watchlist.txt
(否则)。
HOMEBREW_LOGS
使用此目录存储日志文件。
默认值:macOS:$HOME/Library/Logs/Homebrew
,Linux:$XDG_CACHE_HOME/Homebrew/Logs
或 $HOME/.cache/Homebrew/Logs
。
HOMEBREW_MAKE_JOBS
在使用make
(1)构建时,使用此值作为并行作业数。
默认值:可用 CPU 核心数。
HOMEBREW_NO_ANALYTICS
如果设置,则不发送分析数据。谷歌分析已被销毁。有关更多信息,请参阅:https://homebrew.dev.org.tw/Analytics
HOMEBREW_NO_AUTO_UPDATE
如果设置,则不会在运行某些命令之前自动更新,例如brew install
、brew upgrade
和brew tap
。最好通过将HOMEBREW_AUTO_UPDATE_SECS
设置为高于默认值的值来较少地运行此命令。请注意,设置此值以及例如添加新的 taps 可能导致配置损坏。请确保在报告任何问题之前始终运行brew update
。
HOMEBREW_NO_BOOTSNAP
如果设置,则不使用 Bootsnap 加速重复的brew
调用。
HOMEBREW_NO_CLEANUP_FORMULAE
逗號分隔的公式清單。 如果此清單中包含某個公式,Homebrew 將拒絕清理或自動移除該公式。
HOMEBREW_NO_COLOR
如果設置了此選項,則不要打印添加了顏色的文本。
默認值: $NO_COLOR
。
HOMEBREW_NO_EMOJI
如果設置了此選項,在成功構建時不要打印HOMEBREW_INSTALL_BADGE
。
HOMEBREW_NO_ENV_HINTS
如果設置了此選項,則不要打印任何有關使用環境變量更改 Homebrew 行為的提示。
HOMEBREW_NO_GITHUB_API
如果設置了此選項,則不要使用 GitHub API,例如用於搜索或在安裝失敗後擷取相關問題。
HOMEBREW_NO_INSECURE_REDIRECT
如果設置了此選項,則禁止從安全的 HTTPS 重新導向到不安全的 HTTP。
注意: 確保您的下載完全安全,這可能會導致來源自 SourceForge、一些 GNU 和 GNOME 托管的公式無法下載。
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK
如果設置了此選項,在安裝、升級或重新安裝公式後,不要檢查依賴項的損壞連結或過時依賴項。這將導致較少的依賴項(及其依賴項)被升級或重新安裝,但可能會導致從運行brew install
formula
或 brew upgrade
formula
中出現更多的損壞。
HOMEBREW_NO_INSTALL_CLEANUP
如果設置了此選項,brew install
、brew upgrade
和 brew reinstall
將永遠不會自動清理已安裝/升級/重新安裝的公式,也不會在每HOMEBREW_CLEANUP_PERIODIC_FULL_DAYS
天清理所有公式。 或者,HOMEBREW_NO_CLEANUP_FORMULAE
允許指定不清理的特定公式。
HOMEBREW_NO_INSTALL_FROM_API
如果設置了此選項,則不要使用 Homebrew 的 API 在 homebrew/core 和 homebrew/cask taps 中安裝公式和 Casks,而是使用這些存儲庫的(大型、緩慢的)本地檢查。
HOMEBREW_NO_INSTALL_UPGRADE
如果設置了此選項,brew install
formula|cask
將不會升級已安裝但過時的formula|cask
。
HOMEBREW_NO_UPDATE_REPORT_NEW
如果設置了此選項,brew update
將不會顯示新添加的公式/casks 列表。
HOMEBREW_PIP_INDEX_URL
若設定,brew install
formula
將使用此網址下載 PyPI 套件資源。
預設值: https://pypi.org/simple
。
HOMEBREW_PRY
若設定,將使用 Pry 來執行 brew irb
命令。
HOMEBREW_SIMULATE_MACOS_ON_LINUX
若設定,執行 Homebrew 在 Linux 上將模擬某些 macOS 代碼路徑。當在 Linux 上審核 macOS 公式時,這很有用。
HOMEBREW_SKIP_OR_LATER_BOTTLES
若與 HOMEBREW_DEVELOPER
一同設定,不使用舊版 macOS 的瓶裝二進制文件。這在開發新版 macOS 時很有用。
HOMEBREW_SORBET_RUNTIME
若設定,啟用使用 Sorbet 的運行時類型檢查。對於 HOMEBREW_DEVELOPER
或執行某些開發人員命令時,默認設置。
HOMEBREW_SSH_CONFIG_PATH
若設定,Homebrew 將使用給定的配置文件而不是 ~/.ssh/config
在 SSH 上提取 Git 存儲庫時。
預設值: $HOME/.ssh/config
HOMEBREW_SUDO_THROUGH_SUDO_USER
若設定,Homebrew 將使用 SUDO_USER
環境變量來定義當運行 sudo
(8) 時要經由的用戶。
HOMEBREW_SVN
使用此作為 svn
(1) 二進制文件。
預設值: Homebrew 建置的 Subversion(如果已安裝),或系統提供的二進制文件。
HOMEBREW_SYSTEM_ENV_TAKES_PRIORITY
若在 Homebrew 的系統全域環境文件(/etc/homebrew/brew.env
)中設定,則系統全域環境文件將最後加載,以覆蓋任何前綴或用戶設置。
HOMEBREW_TEMP
使用此路徑作為建構套件的臨時目錄。如果您的系統臨時目錄和 Homebrew 前綴位於不同的卷上,當目標尚不存在時,macOS 在卷間移動符號鏈結時可能會出現問題。這個問題通常發生在使用 FileVault 或自定義 SSD 配置時。
預設值: macOS:/private/tmp
,Linux:/tmp
。
更新Homebrew到指定標籤
如果設置,即使已經執行開發者命令,也始終使用最新的穩定標籤。
Homebrew升級貪婪模式
如果設置,將--greedy
參數傳遞給所有cask升級命令。
Homebrew冗長模式
如果設置,運行命令時始終假定使用--verbose
參數。
使用點狀冗長模式
如果設置,冗長輸出將每分鐘最多打印一個.
。這可以避免因無輸出而導致長時間運行的Homebrew命令被終止。
驗證憑證
如果設置,Homebrew將使用gh
工具來驗證來自homebrew-core的瓶子的構建來源的加密憑證。
SUDO_ASKPASS
如果設置,調用sudo
(8)時將傳遞-A
選項。
all_proxy
在通過Homebrew下載時,使用此SOCKS5代理進行curl
(1)、git
(1)和svn
(1)。
ftp_proxy
在通過Homebrew下載時,使用此FTP代理進行curl
(1)、git
(1)和svn
(1)。
http_proxy
在通過Homebrew下載時,使用此HTTP代理進行curl
(1)、git
(1)和svn
(1)。
https_proxy
在通過Homebrew下載時,使用此HTTPS代理進行curl
(1)、git
(1)和svn
(1)。
no_proxy
通過curl
(1)、git
(1)和svn
(1)下載時,一個由逗號分隔的主機名和域名列表,不受代理的影響。
設置上述文檔中記錄的http_proxy
、https_proxy
、all_proxy
、ftp_proxy
和/或no_proxy
環境變量。
例如,使用未驗證的HTTP或SOCKS5代理
export http_proxy=http://$HOST:$PORT
export all_proxy=socks5://$HOST:$PORT
以及驗證的HTTP代理
export http_proxy=http://$USER:$PASSWORD@$HOST:$PORT
Homebrew文檔:https://homebrew.dev.org.tw
Homebrew API:https://rubydoc.brew.sh
git
(1), git-log
(1)
Homebrew 的專案負責人是 Mike McQuaid。
Homebrew 的專案領導委員會成員包括 Colin Dean、Issy Long、Mike McQuaid、Patrick Linnane 和 Vanessa Gennarelli。
Homebrew 的技術指導委員會成員包括 Bo Anderson、FX Coudert、Michka Popoff、Mike McQuaid 和 Rylan Polster。
Homebrew 的維護者包括 Alexander Bayandin、Bevan Kay、Bo Anderson、Branch Vincent、Caleb Xu、Carlo Cabrera、David Baumgold、Douglas Eichelberger、Dustin Rodrigues、Eric Knibbe、FX Coudert、Issy Long、Justin Krehel、Markus Reiter、Miccal Matthews、Michael Cho、Michka Popoff、Mike McQuaid、Nanda H Krishna、Patrick Linnane、Razvan Azamfirei、Rui Chen、Ruoyu Zhong、Rylan Polster、Sam Ford、Sean Molenaar、Thierry Moisan、Timothy Sutton 和 William Woodruff。
曾經作出重大貢獻的前維護者包括 Misty De Méo、Shaun Jackman、Vítor Galvão、Claudia Pellegrino、Seeker、Jan Viljanen、JCount、commitay、Dominyk Tiller、Tim Smith、Baptiste Fontaine、Xu Cheng、Martin Afanasjew、Brett Koonce、Charlie Sharpsteen、Jack Nagel、Adam Vandenberg、Andrew Janke、Alex Dunn、neutric、Tomasz Pajor、Uladzislau Shablinski、Alyssa Ross、ilovezfs、Chongyu Zhu 和 Homebrew 的創造者 Max Howell。
請參考我們在 GitHub 上的問題