Mac 上的包管理工具 Homebrew 使用
Homebrew 是使用 ruby 语言写的 Mac 系统的包管理工具(也有 Linux 版本), 在系统默认没有提供相关包的情况下发挥作用. 大多是工程类没有图形界面的包.
Homebrew 的优点是能够判断系统中已经有的组件而不会重复下载, 其他的包管理工具如 MacPorts
, Fink
, pkgsrc
, Gentoo Prefix
等都会重复下载系统已有的组件.
1. 安装
1 | /usr/bin/ruby -e "$(curl -fsSL [https://raw.githubusercontent.com/Homebrew/install/master/install](https://raw.githubusercontent.com/Homebrew/install/master/install))" |
2. 基础命令
brew install vim
: 安装 vimbrew install cask
: 安装 cask(也是一种软件管理工具, 但是涵盖软件范围广, 基本都是图形界面软件, 比如 QQ 微信等)brew help
: 查看简单帮助brew install <package name>
: 安装软件包brew uninstall <package name>
: 卸载软件包brew list [--versions]
: 列出已安装的软件包(包括版本)brew search <package name>
: 查找软件包brew info <package name>
: 查看软件包信息brew update
: 更新brewbrew cleanup
: 清理所有包的旧版本brew outdated
: 列出过时的软件包(已安装但不是最新版本)brew upgrade [<package name>]
: 更新过时的软件包(不指定软件包表示更新全部)brew doctor
: 检查brew运行状态man brew
: 显示使用手册brew pin $FORMULA
: 锁定某个包(以后不会再更新)brew unpin $FORMULA
: 取消锁定brew tap buo/cask-upgrade
: 安装一个第三方的仓库- 第三方仓库需要在
GitHub
上, 且仓库名必须以homebrew-
开头 - 此命令的仓库名可以简写, 省略了
homebrew-
- 在
brew install
时, 默认的检查顺序如下- pinned taps
- core formulae
- other taps
- 第三方仓库需要在
brew tap-pin user/repo
: 固定某个第三方仓库brew tap-info --installed
: 列出所有已安装的taps
brew untap buo/cask-upgrade
: 删除brew deps --installed --tree
: 查看已安装的包的依赖, 树形显示brew install mas
: 安装更新官方商店软件的插件mas upgrade
: 更新 mas 内需要更新的软件
3. 官方全部包列表
4. 个人 Homebrew 包清单(仅供参考)
1 | autoconf libidn2 python |
5. 小知识
Gem
是封装起来的Ruby
应用程序或代码库. 在终端使用的gem
命令, 是指通过RubyGems
管理Gem
包.
rvm
用于帮你安装Ruby
环境, 帮你管理多个Ruby
环境, 帮你管理你开发的每个Ruby
应用使用机器上哪个Ruby
环境. Ruby
环境不仅仅是Ruby
本身, 还包括依赖的第三方Ruby
插件. 都由RVM
管理.
curl
全称是 commandline url
, 是在命令行模式下工作, 利用 URL
的语法进行数据的传输或者文件的传输
6. 插件
6.1. Cask
6.1.1. 介绍
brew
中的一个包管理工具, 涵盖软件范围广, 其内基本都是一些常用的图形化操作软件
6.1.2. 基础命令
brew cask help
: 查看帮助brew cask install <software name>
: 安装软件brew cask install <software name> --force
: 强制安装(可用在已有 dmg 安装的情况下)brew cask uninstall <software name>
: 卸载软件brew cask zap <software name>
: 将与此包相关的所有文件全部删除(可能会删除与其他包共享的一些文件)brew cask info <software name>
查看软件相关信息brew cask list
: 列出通过Homebrew-Cask
安装的包brew cask fetch <software name>
: 下载远程软件包到本地文件夹(不安装)brew cask doctor
: 检查Cask
配置信息问题brew cask outdated
: 列出过期的软件包brew cask upgrade
: 升级所有包brew tap buo/cask-upgrade
: 安装第三方仓库, 此仓库可以帮助用户检查更新并更新所有cask
brew cu -a
: 通过执行上一个命令后, 可用此命令更新所有 cask 下载的软件. 如果使用默认的brew cask upgrade
会导致部分自动更新的软件不被列出进而不能更新.
6.1.3. 个人 cask 软件包清单(仅供参考)
1 | 1password eudic iterm2 omnifocus qlvideo suspicious-package |
6.2. rmtree
这个包很简单, 功能就是将一个已安装包, 且将只用于该包的所有依赖全部删除, 非常实用!
6.2.1. 安装
brew tap beeftornado/rmtree && brew install brew-rmtree
: 安装第三方 tap 并将该 tap 下的包 brew-rmtree
安装到本机
6.2.2. 使用
brew rmtree <package name>
: 删除该包并将其所有依赖删除