brew

最后更新于:2022-04-02 05:45:08

[TOC] # [Homebrew](https://brew.sh/index_zh-cn.html) 包管理工具 Homebrew(brew),方便从源码下载到本地编译安装,自动包含相关库依赖和环境设置,能在Mac中方便的安装软件、升级或卸载软件, 只需要一个命令, 非常方便。 下载的软件通常存在该目录下:`/usr/local/Cellar/` 类似 Ubuntu 的 `apt-get`,CentOS 的 `yum`。 ## 安装brew ``` arm 版会被安装到`/opt/homebrew/bin/brew`目录,x86 版会被安装到`/usr/local/bin/brew`目录。 ``` [Homebrew国内如何自动安装](https://zhuanlan.zhihu.com/p/111014448) [镜像快速安装Homebrew教程](https://brew.idayer.com/) # 更新源 ``` # core git clone git://mirrors.ustc.edu.cn/homebrew-core.git/ /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core --depth=1 # Cask git clone git://mirrors.ustc.edu.cn/homebrew-cask.git/ /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask --depth=1 # unshallow update git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow ``` ## 更改 Homebrew 默认源 默认的源实在速度有够慢的。以下是将默认源替换为国内 USTC 源的方法。 1. 替换brew.git: ```bash git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git ``` 2. 替换核心软件仓库 ```bash git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git ``` 在终端执行下面命令 ```bash # 执行更新 brew update # 检查无错误: brew doctor ``` 这样海外和已经有系统全局代理设置的朋友们就可以直接使用`brew`命令安装软件了。 3. 替换 cask 软件仓库(提供 macOS 应用和大型二进制文件) ``` git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git ``` 4. 替换 Bottles 源(Homebrew 预编译二进制软件包) bash(默认 shell)用户: ```bash echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile source ~/.bash_profile ``` zsh 用户: ```bash echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.zshrc source ~/.zshrc ``` > [安装homebrew报错](https://blog.csdn.net/qq_35624642/article/details/79682979) ## brew 常用命令 ~~~ brew search name # 搜索 brew 支持的软件(支持模糊搜索) brew list / brew list --cask # 查看你安装过的包列表 brew info svn # 显示软件的各种信息(包括版本、源码地址、依赖等等) brew install name # 安装源码 brew uninstall/rm name # 卸载软件 brew outdated #查看哪些已安装的程序需要更新 brew update # brew自身更新 brew upgrade name # 更新安装过的软件(如果不加软件名,就更新所有可以更新的软件) brew cleanup # 清理旧版本的包缓存 brew services restart nginx # 重启Nigix就那么简单 (PS:详见 man brew) ~~~ ## 示例 可以安装 `tree` 命令: ``` brew install tree ``` 比如 git、MySQL、Gradle、Maven、Node.js 等工具,就不需要去网上下载了,只要一行命令就能搞定: ~~~ brew install git mysql gradle maven node ~~~ PS:安装 brew 的时候会自动下载和安装 Apple 的 Command Line Tools。 ## [`brew tap`](https://github.com/Homebrew/brew/blob/master/docs/brew-tap.md)(安装第三方扩展的 brew 服务) 由于`brew` 和包含的包源都是通过 github 来管理,人为的维护管理,除了自己的源还允许别人的源添加进来。类似与 Ubuntu 的 `ppa`。然后就可以使用`brew`的命令进行管理。 ``` brew tap ``` 当然也可以从brew中移除掉的第三方公式: ``` brew untap user/repo [user/repo user/repo ...] ``` Mac OS每次系统更新都会把常用的开发包(Ruby、Python 等)也顺带着更新到最新版本。(Java、PHP都已经被抛弃不再默认安装了) 而 brew 居然也不包含 PHP 的包,那怎么办呢? ``` brew tap josegonzalez/php ``` 命令完成之后,执行(当前最新是 php 5.5 版本,请根据需要替换) ``` brew install php55 ``` # 完美解决macOS Homebrew安装JDK的一些问题 https://juejin.cn/post/6896353939277496327 ``` brew cask install AdoptOpenJDK/openjdk/adoptopenjdk8 brew cask install AdoptOpenJDK/openjdk/adoptopenjdk9 brew cask install AdoptOpenJDK/openjdk/adoptopenjdk10 brew cask install AdoptOpenJDK/openjdk/adoptopenjdk12 brew cask install AdoptOpenJDK/openjdk/adoptopenjdk15 brew cask install AdoptOpenJDK/openjdk/adoptopenjdk ``` # [Homebrew Cask](https://caskroom.github.io/) 会下载解压已经编译好的文件(.dmg/.pkg),自动下载解压,到统一目录(`/usr/local/Caskroom` )下 ,省去自己下载、解压、拖拽、推出等烦人步骤。易于管理,容易卸载。包含了App Store没有的软件 brew-cask 是社区驱动的,如果你发现 brew-cask 上的应用不是最新版本,或者缺少你某个应用,你可以自己提交 pull request。 而且有些应用只能通过 App Store 安装,比如 Xcode 等一些 Apple 的应用。App Store 没有对应的命令行工具,还需要 Apple ID。倒是更新起来很方便。 ## 推荐 几乎所有常用的应用都可以通过 brew-cask 安装,而且是从相应应用的官网上下载,所以你要安装新的应用时,建议用 brew-cask 安装。 **如果你不知道应用在 brew-cask 中的 ID,可以先用`brew cask search`命令搜索。** 安装完 brew 时,brew-cask 已经安装好了,无需额外安装 ~~~ brew tap caskroom/cask # 添加 Github 上的 caskroom/cask 库 brew install brew-cask # 安装 brew-cask brew cask install google-chrome # 安装 Google 浏览器 brew update && brew upgrade brew-cask && brew cleanup # 更新 ~~~ # 示例 比如你可以这样安装: ~~~shell brew install iterm2 --cask brew install google-chrome --cask brew install visual-studio-code --cask brew install microsoft-edge --cask brew install flux --cask ~~~ 还有 wechat、baidunetdisk、tencent-lemon 等都可以用`brew cask`安装。 ## 下载包以及缓存 位置 ```shell ls $(brew --cache) # 默认位置:~/Library/Caches/Homebrew ``` 使用:`brew cleanup` 命令清除所有的下载包以及缓存。 ## 卸载软件 一般软件会在这些位置: ``` ~/Applications ~/Library/Application Support # Support文件 ~/Library/Caches/ # 缓存文件 ~/Library/Saved Application State/ # 配置文件路径 ~/Library/Preferences # 配置文件路径 ~/Library/Application Support/CrashReporter ~/Library/WebKit/ ``` 使用柠檬清理就蛮好哈~ ## 文件预览插件 [quick-look插件](https://github.com/sindresorhus/quick-look-plugins) 可以让 Mac 上的文件预览更有效,比如语法高亮、markdown 渲染、json 预览等等。 ~~~ brew install qlcolorcode --cask brew install qlstephen --cask brew install qlmarkdown --cask brew install quicklook-json --cask brew install qlprettypatch --cask brew install quicklook-csv --cask brew install betterzipql --cask brew install webp-quicklook --cask brew install suspicious-package --cask ~~~ >译注: 如果你经常使用 Alfred 启动程序,那么你会想 Alfred 可以搜索 brew cask 安装的程序,实现这些仅需运行: ``` brew cask alfred link ``` ## LaunchRocket 一个帮助管理 Homebrew 安装的服务的软件,比如你使用 Homebrew 安装的 Mysql、Redis、MongoDB,是让它自启动呢,还是手动启动,传统方式需要使用命令行的命令,而使用[LaunchRocket](https://github.com/jimbojsb/launchrocket) 则可以在图形界面中进行管理了! ``` brew cask install launchrocket ``` 安装后在系统偏好设置中的最下面能看到小火箭的软件标志,如下: ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/3fa35f25e8e174ebeea1f192b97408a4_488x312.png) # 更新软件 由于官方没有更新APP的命令(官方推荐使用APP自己的更新机制),所以有大神自己写了个更新命令模块。 ## 使用命令行更新(推荐方法) 开源地址:https://github.com/buo/homebrew-cask-upgrade 首先安装: ``` brew tap buo/cask-upgrade ``` ## 更新所有过时的APP 1. 先输入此命令,敲击回车: ``` brew cu # 获取最新版本的Homebrew Cask和所有的APP的信息 ``` 2. 再输入此命令,回车: ``` brew cu -a # 更新所有过时的APP ``` 可能会问你是不是要一次全部更新这些软件,输入 Y 还是 N,这是因为需要更新的软件太多了。 ## 更新指定的APP ``` brew cu [CASK] ``` 选项: ``` Usage: brew cu [CASK] [options] -a, --all Include apps that auto-update in the upgrade --cleanup Cleans up cached downloads and tracker symlinks after updating -f --force Include apps that are marked as latest (i.e. force-reinstall them) -y, --yes Update all outdated apps; answer yes to updating packages ``` ## 帮助信息 ``` brew help cu ``` 来获取更多帮助信息。 # 参考 http://www.cnblogs.com/TankXiao/p/3247113.html
';