前言:
最近在Mac终端上安装SVN时用到了HomeBrew工具,虽然常用,但平时没有过多了解,特翻阅了资料总结一下,以便遗忘.
目录结构:
1. 什么是HomeBrew
2. HomeBrew的主要用途
3. HomeBrew的安装/卸载
4. HomeBrew的使用
5.HomeBrewCask介绍
6.HomeBrewCask安装
7.HomeBrewCask使用
8.HomeBrewCask原理
9.先关注意点
正文:
1. 什么是HomeBrew?
* 官方解释: Homebrew是以最简单,最灵活的方式来安装苹果公司在MacOS中不包含的UNIX工具。
* 通俗解释: Homebrew 是Mac的OS X上的软件安装管理工具,用以简化 macOS 上的软件安装过程,拥有安装、卸载、更新、查看、搜索等很多实用的功能。可以类比于 Windows 上软件管家的一键安装。 简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷。Homebrew 在 2009 年由马克斯·霍威尔(Max Howell)写成,它在 GitHub 上拥有大量贡献者,目前仍处于活跃状态。
2. HomeBrew的主要用途?
正如上面所说的用以简化 macOS 上的软件安装过程,拥有安装、卸载、更新、查看、搜索等很多实用的功能.
3. HomeBrew的安装/卸载?
-
安装
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-
卸载
$ 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
4. HomeBrew的使用?
-
安装任意包
$ brew install <packageName>
示例:安装node
$ brew install node
-
卸载任意包
$ brew uninstall <packageName>
示例:卸载git
$ brew uninstall git
-
查询可用包
$ brew search <packageName>
-
查看已安装包列表
$ brew list
-
查看任意包信息
$ brew info <packageName>
-
更新所有软件
$ brew update
- 更新具体软件
-
$ brew upgrade 软件名
- 显示包依赖
-
$ brew reps
- 显示安装的软件服务
brew info/home 软件名
示例:
brew info git / brew home git
- 显示安装的服务
brew services list
- 安装服务启动,停止,重启
brew services start/stop/restart serverName
-
查看Homebrew版本
$ brew -v
-
Homebrew帮助信息
$ brew -h
5. HomeBrewCask介绍
Homebrew Cask 是 Homebrew 的扩展,借助它可以方便地在 macOS 上安装图形界面程序,即我们常用的各类应用。
Homebrew 中文含义为自制、自酿酒,Cask 中文含义为桶、木桶,桶装酒是一种成品,也就是说每一个 homebrew cask 都可以直接使用的,比如 Atom 的 Cask 名称为 atom,那么就可以使用如下命令安装:
brew cask install atom
甚至也可以提交新的 Cask,比如假设有桌面客户端少数派,则用 brew cask create sspai 创建新的名称为 sspai 的 Cask,当然还要提供官网下载链接、官方主页、应用版本等信息,可以参照 官方教程,此处就不再细说。
6. HomeBrewCask安装
安装:
brew tap phinze/homebrew-cask brew install brew-cask
7. HomeBrewCask使用
brew cask install 应用名称 brew cask install <甲应用名称> <乙应用名称> <丙应用名称>
前文已经讲过这个安装命令,但一个问题是:如何确认它支持所要安装的应用?
brew cask search 关键字
比如要确定是否支持应用 gooooooogle,可搜索关键字 goo,即可显示所有包含 goo 的应用。如果不加关键字,会显示出所有支持的应用名称。
由于 Homebrew Cask 还不支持更新应用,故建议使用应用自带的方式进行更新。欲要查看其他命令,可在终端执行 brew cask help 以显示所有 commands,比如发现查看应用 Cask 信息的命令是 info,则在终端执行 brew cask info 应用名称 即可显示该应用信息。
8.Homebrew Cask 原理
用软链接的方式将应用链接到 Application 文件夹,有人说这样的方式会导致 Spotlight 无法检索到。但现在,它是将应用直接移动到 Application 文件夹,这与我们自己去官网下载应用再安装是完全一致的,后续更新或卸载也按平常的方式即可。
当然,也可以用 brew cask uninstall 应用名称
的方式,这种方式才会删除路径 /usr/local/Caskroom
中保留的应用信息文件,这样当我们用命令 brew cask list
查询已安装列表时,已卸载的应用才不会仍显示。也就是说,如果按照平常的方式,比如直接移到废纸篓,那么还需手动删除 Caskroom 中的应用信息文件。当然,不删除也没啥影响,因为一般没必要查看已安装列表,已安装应用在 Launchpad 中查看就好。
9.相关注意
在Mac OS X 10.11系统以后,/usr/local/等系统目录下的文件读写是需要系统root权限的,以往的Homebrew安装如果没有指定安装路径,会默认安装在这些需要系统root用户读写权限的目录下,导致有些指令需要添加sudo前缀来执行,比如升级Homebrew需要:
$ sudo brew update
如果你不想每次都使用sudo指令,你有两种方法可以选择:
* 对/usr/local 目录下的文件读写进行root用户授权
$ sudo chown -R $USER /usr/local
示例:
$ sudo chown -R gaojun /usr/local
* (推荐)安装Homebrew时对安装路径进行指定,直接安装在不需要系统root用户授权就可以自由读写的目录下
<install path> -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"