写点什么

ReactNative 进阶(三十三):Mac 下 homebrew 的安装和 brew 命令的使用

  • 2022 年 1 月 25 日
  • 本文字数:2715 字

    阅读完需:约 9 分钟

ReactNative进阶(三十三):Mac 下 homebrew 的安装和 brew 命令的使用

一、前言

Homebrewmac 下的包管理器,由国外大神 Max Howell 开发的一款包管理工具,类似 Debian 的apt,他可以安装任何你想安装的东西。其基于命令行模式,使用命令 brew 管理软件。类似 ubuntu 下的 apt-get 、fedora 下的 yum

二、安装 brew 命令

打开mac终端软件,输入下面的内容,然后回车:


/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
复制代码


出现如下画面证明安装成功。



我们查看帮助再次验证一下是否安装成功。



至于安装过程中遇到的问题,可参考博文《ReactNative进阶(一):ReactNative学习资料汇总》。

三、应用 brew 安装软件

例如安装 wget,在终端执行下面的命令:


brew install wget
复制代码


安装好后,终端中输入 wget,然后回车,验证是与否安装成功:


$ wget
复制代码


wget:未指定 URL 用法:wget [选项]... [URL]...


请尝试使用“wget --help”查看更多的选项。


homebrew 中,wget 被称作一个formula,意思是配方、公式。


brew 将软件安装在了哪里?


上面我们安装了 wget,我们看下安装位置,在终端输入:


$ which wget
复制代码


/usr/local/bin/wget


/usr/local/bin/wget 只是一个软链接(类似windows下的快捷方式)。


$ ls -l /usr/local/bin/wget
复制代码


lrwxr-xr-x  1 letian  admin  32  2  5  2018 /usr/local/bin/wget -> ../Cellar/wget/1.19.4_1/bin/wget
复制代码


由此可知,wget 的真正物理位置是/usr/local/Cellar/wget/1.19.4_1/bin/wget


其实,brew 将软件都安装在/usr/local/Cellar/目录下,然后再做一个软链接到 /usr/local/bin 下面。


Cellar 是 地窖、酒窖的意思。

四、使用 brew cask 一站式安装

brew cask 可以将软件本身、依赖字体、依赖插件等一次性安装好。例如安装 Firefox 火狐浏览器:


brew cask install firefox
复制代码


安装 firefox 的另一个方法是去官网下载 dmg 安装包,按照 dmg 的方式安装。


一般,brew install 是通过下载源码,编译安装;brew cask 下载的编译好的文件,不用编译,直接安装。

五、brew 的更多用法

  • brew 显示使用帮助终端中直接输入brew,并回车。


$ brew
复制代码


Example 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 // .... 省略部分内容


  • 卸载通过 brew install 安装的软件例如我们要卸载 wget ,可以:


brew uninstall wget
复制代码


  • 更新通过 brew install 安装的软件例如我们要更新 wget,可以:


brew upgrade wget
复制代码


  • 查看通过 brew install 安装了哪些软件


brew list
复制代码


  • 通过 brew info 查看一个软件的信息例如:


brew info wget
复制代码


  • brew 自检通过自检,可以发现一些问题,brew 会给出解决方案:


brew doctor
复制代码


  • 搜索软件通过 brew search 可以搜索 formula 和 cask 。


例如搜索 wget:


$ brew search wget
复制代码


==> Formulaewget ✔ wgetpaste homebrew/linuxbrew-core/wget


可以看到有 3 个formula的名称中含有 wget,其中wget已经安装了,所以后面有个对号。


例如搜索 chrome


$ brew search chrome
复制代码


==> Formulaechrome-cli homebrew/linuxbrew-core/chrome-clichrome-export homebrew/linuxbrew-core/chrome-export==> Caskschrome-devtools dmm-player-for-chrome mkchromecastchrome-devtools dmm-player-for-chrome mkchromecastchrome-remote-desktop-host epichrome homebrew/cask-versions/google-chrome-betachrome-remote-desktop-host epichrome homebrew/cask-versions/google-chrome-canarychromedriver google-chrome homebrew/cask-versions/google-chrome-devchromedriver google-chrome


可以看到既有 formula,也有 cask。注意,cask 要通过 brew cask install 安装。


  • 查看 brew cask 的使用帮助


$ brew cask
复制代码


Homebrew Cask provides a friendly CLI workflow for the administrationof macOS applications distributed as binaries.


Commands:


audit      verifies installability of Caskscat        dump raw source of the given Cask to the standard outputcreate     creates the given Cask and opens it in an editordoctor     checks for configuration issuesedit       edits the given Caskfetch      downloads remote application files to local cachehome       opens the homepage of the given Caskinfo       displays information about the given Caskinstall    installs the given Casklist       with no args, lists installed Casks; given installed Casks, lists staged filesoutdated   list the outdated installed Casksreinstall  reinstalls the given Caskstyle      checks Cask style using RuboCopuninstall  uninstalls the given Caskupgrade    upgrades all outdated caskszap        zaps all files associated with the given Cask
复制代码


  • 卸载通过 brew cask 安装的软件通过brew cask uninstall卸载即可,例如卸载 firefox:


brew cask uninstall firefox
复制代码


  • 通过 brew cask info 查看软件信息例如查看 firefox 的信息:


brew cask info firefox
复制代码


目录结构


  • /usr/local/Cellar : 存放命令行工具

  • /usr/local/Caskroom : 存放带图形化界面的工具

5.1 配置源

国内访问默认的源会比较慢。可修改为国内的源:


cd "$(brew --repo)"git remote set-url origin git://mirrors.ustc.edu.cn/brew.gitexport HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles
复制代码


默认的源地址: https://github.com/Homebrew/brew


禁止 brew 执行命令时自动更新


export HOMEBREW_NO_AUTO_UPDATE=true
复制代码

六、废弃用法

在老版本的 brew 中,cask 需要单独安装,安装方法是:


brew tap caskroom/caskbrew install brew-cask
复制代码


现在的 brew,已经自带 cask,所以不需要单独安装了。


brew cask search 命令已经废弃,直接用 brew search 即可,搜索结果中会对 cask 的结果做区分。

七、拓展阅读

发布于: 刚刚阅读数: 3
用户头像

No Silver Bullet 2021.07.09 加入

岂曰无衣 与子同袍

评论

发布
暂无评论
ReactNative进阶(三十三):Mac 下 homebrew 的安装和 brew 命令的使用