一、Homebrew是什么
Homebrew是一款软件包管理工具,目前支持macOS
和linux
系统
二、安装&升级&卸载
# 安装
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 升级
brew update
# 卸载
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
三、换源
清华源换源方法见官方说明
四、常用命令
命令 | 作用 |
---|---|
brew help | 查看帮助 |
brew search 软件名 | 搜索软件 |
brew info 软件名 | 查询指定软件信息 |
brew install 软件名 | 安装软件 |
brew install 软件名@版本号 | 安装指定版本的软件(安装前可先search有哪些版本) |
brew link 软件名 | 创建链接到/usr/local/bin中(默认安装路径:/usr/local/Cellar) |
brew unlink 软件名 | 删除链接 |
brew outdated | 检查哪些软件可更新 |
brew update | 升级homebrew本身 |
brew upgrade | 升级所有软件 |
brew upgrade 软件名 | 升级指定软件 |
brew uninstall 软件名 | 卸载软件 |
brew cleanup | 清除所有软件的旧版本 |
brew cleanup 软件名 | 清除指定软件的旧版本 |
brew cleanup -n | 查看可清理的旧版本的软件,不做实际清除操作 |
brew pin 软件名 | 锁定指定软件,保证在全局更新时不更新 |
brew unpin 软件名 | 取消锁定指定软件 |
brew list | 查询已安装的软件信息 |
brew deps --installed --tree | 查看已安装软件的依赖,以树形展示 |
brew config | 查看Homebrew配置 |
brew services start|stop|restart 软件名 | 启动/停止/重启Homebrew服务 |
附录
brew update与brew upgrade的区别是什么?
- brew update 是用来更新 homebrew 本身的命令,它会检查 homebrew 的源代码是否有变化,并下载最新的版本。
- brew upgrade 是用来更新 homebrew 安装的所有软件包的命令,它会先执行 brew update ,然后检查是否有可用的更新,并安装最新的版本。 如果你只想更新 homebrew ,而不想更新软件包,使用 brew update 命令。如果你想一次性更新 homebrew 和所有软件包,使用 brew upgrade 命令
homebrew 3与homebrew 4的区别是什么?
- homebrew 4 是 homebrew 的最新版本,它在 2023 年 2 月发布
- homebrew 4 相比于 homebrew 3 的主要变化有:
- 支持 macOS Monterey ,并且不再支持 macOS Mojave
- 把软件信息储存方式从原先的 git 更换成了 JSON API
- 提升软件更新及安装的速度
- 减少官方仓库文件的体积(增加可选的 HOMEBREW_INSTALL_FROM_API 标志,避免下载软件包的源代码,而是直接从 API 安装预编译的二进制文件)
- 支持在 Linux 上使用 systemd 来管理 brew services
- 增加了 brew install --overwrite 命令,可以覆盖已经安装的软件包
- 开始了离开 SFC (Software Freedom Conservancy) 的过程,SFC 是一个为开源项目提供法律和财务支持的组织
- 拓展阅读:Homebrew 升级 4.0.0,麦金塔上的啤酒会更香吗?
homebrew3 如何迁移到 homebrew4?
- 确保你的系统满足 homebrew 4 的要求,即 macOS Catalina 或更高版本,或者 Linux 或 WSL。
- 运行 brew update 命令,更新 homebrew 到最新版本。
- 运行 brew doctor 命令,检查是否有任何问题或警告,并按照提示修复它们。
- 运行 brew upgrade 命令,更新所有已安装的软件包到最新版本
homebrew中 --overwrite 与 --adopt的区别是什么?
- overwrite 是一个选项,用于在安装或升级软件包时,覆盖已经存在的文件。
- adopt 是一个选项,用于在安装软件包时,接管已经存在的应用程序。 这两个选项的区别是,--overwrite 只会覆盖文件,而不会改变应用程序的所有者或权限;而 --adopt 会改变应用程序的所有者和权限,使其归 homebrew 管理