一、Homebrew是什么
使用Mac开发的程序猿福音终于盼到了,又提示缺少套件啦?别担心,Homebrew 随时守候。
—————-援引自官老爷。
Mac OS X是基于Unix的,它可以使用非常多Linux平台上开源的优秀工具,比如wget,比如dos2unix脚本工具等。
但是OS X系统本身却缺少Linux下得包管理器。比如Fedora的yum与dnf,比如Ubuntu的apt-get,比如ArchLinux的Pacman等。
于是这些优秀的开源软件在Mac上的安装只能通过下载源码,编译,安装,配置环境变量的步骤来完成安装。对于大部分的软件,在安装过程中是需要很多的依赖库的,手动去解决这些依赖库是十分痛苦的事情。包管理器干的就是这样的事情:解决软件安装过程中的依赖关系。
有一个开源的项目叫Homebrew,完美解决了Mac OS X上没有包管理器的尴尬。
Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷。
援引官方的一句话:又提示缺少套件啦?别担心,Homebrew 随时守候。Homebrew – OS X 不可或缺的套件管理器。
二、Homebrew环境及安装
环境
- OS X 10.12.5 (16F73)
- Xcode(如果不使用Xcode编程可以安装Command Line Tools for Xcode ︸_︸ 毕竟心疼内存)
安装
- Xcode安装:
在终端键入以下代码:
xcode-select --install
- Homebrew安装:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- ps:执行这个命令有时会返回400,因为Homebrew在https下,可能安装失败,解决方法:
homebrew使用curl下载文件,有些是使用https连接下载的。但由于网络环境或一些其它原因,造成https证书认证失败而无法下载curl 的”-k”选项可以解决这个问题,不检查ssl证书安全性而直接下载,这可能带来一些安全风险。(如果和博主一样懒可以多试几次安装命令)但你若对homebrew足够信任,那可以修改其源码给curl加上“-k”选项,方法如下:
sudo vim /usr/local/Library/Homebrew/utils.rb
在文件末尾有:
args = [flags, HOMEBREW_USER_AGENT, *args]
添加”-k”参数:
args = [flags, HOMEBREW_USER_AGENT, '-k', *args]
bingo 问题解决!!!!
卸载
- 卸载:
$ cd `brew --prefix`
$ rm -rf Cellar
$ brew prune
$ rm `git ls-files`
$ rm -r Library/Homebrew Library/Aliases Library/Formula Library/Contributions
$ rm -rf .git
$ rm -rf ~/Library/Caches/Homebrew
三、Homebrew使用
Homebrew基础使用
- 安装软件
- 示例:安装ngnix
#brew install PKG_NAME
brew install ngnix
- 搜索软件
- 示例:搜索ngnix
#brew search PKG_NAME
brew search ngnix
- 查看软件信息
- 示例:查看ngnix信息
#brew infoPKG_NAME
brew info ngnix
- 卸载软件
- 示例:卸载ngnix
#brew uninstall PKG_NAME
brew uninstall ngnix
四、Homebrew扩展
如果我想安装Chrome浏览器怎么办?试试下面的命令:
brew install google-chrome
发现并不能安装,没有该软件。怎么办?好消息是一个叫做homebrew-cask的工具扩充了homebrew。
安装homebrew-cask
brew install caskroom/cask/brew-cask
使用
- 基本用法与brew相同,只不过在brew后面加了一个cask单词。
安装软件
brew cask install google-chrome
卸载软件
brew cask uninstall google-chrome
Homebrew常用语法大全:
功能 | 命令 |
---|---|
查看已经安装的命令 | brew list |
更新Homebrew | brew update |
找出已经过期的软件包 | brew outdated |
升级所有过期的软件包 | brew upgrade |
指定升级过期的软件包 | brew upgrade $FORMULA(这里指软件名) |
暂停安装过程 | brew pin $FORMULA |
恢复安装过程 | brew unpin $FORMULA |
清理指定软件包的所有老版本 | brew cleanup $FORMULA |
清理所有软件包的所有老版本 | brew cleanup |
查看哪些软件包要被清理 | brew cleanup -n |
查看已安装包列表 | brew upgrade |
查看Homebrew版本 | brew -v |
Homebrew帮助信息 | brew -h |
五、参考资料
1、Homebrew官网
2、Homebrew-cask官网
3、mac的homebrew命令详解&全部选项翻译