Homebrew 安装、使用、升级和卸载
前言
What is Homebrew?
The Missing Package Manager for macOS (or Linux)
因为 macOS 属于类 Unix 系统,为了避免冗余,下面相关知识将主要基于在 macOS 系统中应用展开。
安装
Linux
在 Linux 上安装细节,这里将不再详细描述,可参考Homebrew-on-Linux:1
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"
macOS
将其复制到 macOS 终端中,并按 enter
回车键,Homebrew 将被安装在 /usr/local/
目录下。1
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
安装完后,我们可以运行 brew --version
或 brew doctor
查看安装是否正常,或版本信息。
通过运行 brew help
命令,我们可以了解 brew 的更多相关用法1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23Example usage:
brew search [TEXT|/REGEX/]
brew info [FORMULA...]
brew install FORMULA...
brew update
brew upgrade [FORMULA...]
brew uninstall FORMULA...
brew list [FORMULA...]
Troubleshooting:
brew config
brew doctor
brew install --verbose --debug FORMULA
Contributing:
brew create [URL [--no-fetch]]
brew edit [FORMULA...]
Further help:
brew commands
brew help [COMMAND]
man brew
https://docs.brew.sh
升级或更新
运行此命令,将会升级或更新 brew ,在此过程中也会更新、升级或新增与之相关联的 formula(组件),也有可能移除一些不必要的 formula 。1
brew update
卸载
在终端中运行此命令,会将已安装的 brew 卸载。你也可以提前下载或查看 卸载脚本1
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
用法
这里将介绍一些常用的命令工具,如以下知识未能解决您的问题,请自行查阅相关资料。
安装
Homebrew 为许多 formula 提供了预编译版本
指定 formula 安装1
2
3brew install <formula>
or
brew install [-f] <formula>
下面命令可以触发源码编译1
brew install --enable-bar <formula>
重新安装1
brew reinstall [email protected]
升级
升级或更新安装的组件(formula)1
2
3brew upgrade #全部更新过时软件
or
brew upgrade <formula> #指定更新过时的软件
阻止将被更新或升级的 formula1
brew pin <formula>
允许 formula 再次被更新或升级1
brew unpin <formula>
卸载
对某个通过 brew 安装的 formula 进行卸载,比如:nginx, mysql, wget1
2
3
4
5
6
7brew uninstall <formula>
or
brew remove <formula>
or
brew uninstall --force <formula> # 强制移除,可能会导致其他功能不能正常运行
or
brew remove -f <formula>
清除
Homebrew 默认每个 30 天自动卸载已安装新版本 formula 的旧版本
移除指定 fromula1
brew cleanup <formula>
清除所有旧版本1
brew cleanup
查看被卸载的 formula1
brew cleanup -n
当然,我们也可以阻止brew cleanup
1
export HOMEBREW_NO_INSTALL_CLEANUP=1
其他
列出已安装的软件包1
2
3brew list
or
brew list --versions
查找软件包1
brew search nginx
查看软件包信息1
brew info mysql
列出需要更新或已过期的 formula1
brew outdated
列出软件包依赖关系1
brew deps mysql
查看缓存路径1
brew --cache
FQA
If set, Homebrew will not auto-update before running brew install, brew upgrade or brew tap.
有时我们只安装某一个组件,并不想对其他组件进行更新,我们可以在终端中导入此环境变量(仅对此窗口终端有用),可以阻止不必要的组件更新,以节省时间。1
export HOMEBREW_NO_AUTO_UPDATE=true
Q2: 找不到问题?
A2: 运行 brew doctor
试试,若安装有问题,会给出提示。