【macOS】Homebrew & Homebrew cask macOS软件包管理神器
Homebrew

Homebrew 与 Homebrew Cask
Homebrew 是基于 OS X 的套件管理工具,是一个开源的 Ruby 脚本,专门用于快速下载软件。更通俗地讲,Homebrew 类似于一个软件中心,你可以理解成 App Store 或者 Google Play 那样的软件商店,只不过,Homebrew 比前者以及 Mac App Store 来说有着更丰富的资源与更高效的管理,具体会在下文提及。
至于 Homebrew Cask,它是一套建立在 Homebrew 基础之上的macOS软件安装命令行工具,是 Homebrew 的扩展。简言之,你完全可以把 Homebrew Cask 当作是 Homebrew 的一部分,在安装常用软件的过程中,大部分情况下我们只需要使用 Homebrew Cask 就足够了。
Homebrew 能干什么?
以下来自Homebrew中文主页
使用 Homebrew 安装 Apple(或您的 Linux 系统)没有预装但 你需要的东西。
$ brew install wget
Homebrew 会将软件包安装到独立目录,并将其文件软链接至 /usr/local 。
$ cd /usr/local
$ find Cellar
Cellar/wget/1.16.1
Cellar/wget/1.16.1/bin/wget
Cellar/wget/1.16.1/share/man/man1/wget.1
$ ls -l bin
bin/wget -> ../Cellar/wget/1.16.1/bin/wget
Homebrew 不会将文件安装到它本身目录之外,所以您可将 Homebrew 安装到任意位置。
轻松创建你自己的 Homebrew 包。
$ brew create https://foo.com/bar-1.0.tgz
Created /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/bar.rb
完全基于 Git 和 Ruby,所以自由修改的同时你仍可以轻松撤销你的变更或与上游更新合并。
$ brew edit wget # 使用 $EDITOR 编辑!
Homebrew 的配方都是简单的 Ruby 脚本:
class Wget < Formula
homepage "https://www.gnu.org/software/wget/"
url "https://ftp.gnu.org/gnu/wget/wget-1.15.tar.gz"
sha256 "52126be8cf1bddd7536886e74c053ad7d0ed2aa89b4b630f76785bac21695fcd"
def install
system "./configure", "--prefix=#{prefix}"
system "make", "install"
end
end
Homebrew 使 macOS(或您的 Linux 系统)更完整。使用 gem 来安装 RubyGems、用 brew 来安装那些依赖包。
Homebrew有什么优势
- 通过 Homebrew 下载安装的软件全部来自对应的软件官网,无需担心下载源的安全问题。
- 依存于系统既有的库,减少了空间占用和冗余
- 使用 Git 进行管理和更新
- 易于定制
- 安装软件 / 软件包 / 软件都在一个目录下,方便管理,这也是 Homebrew 能如此受欢迎的最大原因之一。
Homebrew Cask 的常用命令非常简单,也很好理解,虽然是通过命令行,但你完全不需要对「终端」「命令行」有过多了解,也能很快上手。
不管是 Homebrew 还是 Homebrew Cask,它们除了安装软件外还能帮你做一些其他操作,因此,你花费一定的学习成本带来的效率提升,是值得的。
Homebrew 安装
1. 配备 Intel CPU 的 Mac 电脑
确保你的 Mac 系统版本在 OS X 10.9 或以上。
2. 安装 Xcode
如果你的电脑上没有安装 Xcode,你可能需要先在 Mac App Store 下载 Xcode,如果嫌 Xcode 体积庞大的话,可以前往 Apple 开发者网站 尝试下载 Command Line Tools for Xcode 进行安装。
3.安装 Homebrew
官网主页的安装命令如下
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
但是由于不可抗力,在国内安装我们需要使用Homebrew国内自动安装脚本
安装脚本:
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
卸载脚本:
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/HomebrewUninstall.sh)"
输入以上安装脚本命令即可安装

等待安装完成。

Homebrew常用命令
- 查看帮助信息
$ brew help
- 软件安装命令,如
brew install binwalk,支持多个同时安装,用空格隔开。
$ brew install <软件名>
- 软件搜索命令,支持关键字搜索。如果我们想安装一款软件 Alfred,但不知道 Homebrew 是否支持安装该款应用,我们可通过该方法查询。如输入
brew search binwalk会列出所有符合条件的结果。
$ brew search <关键字>
- 更新 Homebrew,想要获取最新的包,首先得更新 Homebrew 本身。
$ brew update
- 更新包,如
brew upgrade $highlight
$ brew upgrade #更新所有的包
$ brew upgrade $<软件包> #更新指定的包
- 查看 Homebrew 下载的包存放路径
$ brew --cache
- 列出已安装的包
$ brew list
- 列出可更新的包
$ brew outdated
- 清理旧版本的包,如
brew cleanup $wget
$ brew cleanup #清理所有旧版本的包
$ brew cleanup $<软件包> #清理指定的旧版本包
$ brew cleanup -n #查看可清理的旧版本包
- 彻底卸载某个包,如
brew uninstall wget --force
$ brew uninstall <软件包> --force
- 锁定某个不想更新的包,如
brew pin $wget
$ brew pin $<软件包> #锁定指定包
$ brew unpin $<软件包> #取消锁定指定包
- 查看已安装包的依赖
$ brew deps --installed --tree
- 查看包的信息,如
brew info $wget
$ brew info $<软件包> #显示某个包信息
$ brew info #显示安装的包数量、文件数量以及占用空间
软件包安装实例
例如我们想要安装binwalk
我们首先查找
brew search binwalk
然后安装
brew install binwalk

安装完成后我们使用brew list查看是否安装完成
这里安装的是binwalk,也可以使用binwalk -h
brew list

homebrew-rmtree
但是当我们卸载某个软件包时,例如执行brew uninstall bin walk并不会删除其依赖。

这里介绍homebrew-rmtree

简单来说就是rmtree可以在卸载某个软件包的同时检查其依赖并卸载
- 安装命令
$ brew tap beeftornado/rmtree
- 使用命令
$ brew rmtree $<软件包>
使用实例



Homebrew Cask

macOS软件安装
macOS安装软件的方式通常有两种
AppStore
日常使用应用程序可以直接通过App Store下载安装使用
dmg
但绝大部分软件并没有在App Store上架,往往我们可以到官网下载dmg文件,然后安装使用
现在又有了一种新的安装方式homebrew cask
介绍




安装
同样我们使用brew可以直接安装
brew install cask

使用
使用 Homebrew 安装 App 非常简单,这里需要用到的是基于 Homebrew 的扩展 Homebrew Cask,具体方法是在「终端」中输入类似下列形式的代码并运行:
brew install <软件名>
brew install --cask <软件名>
这里的「软件名」就是我们所要安装软件的名称,下面列举几个常用软件的安装命令大家就会明白了:
brew install google-chrome安装 Chrome 浏览器brew install alfred安装 Alfredbrew install fliqlo安装屏保程序 Fliqlobrew install dropbox安装 Dropboxbrew install java安装 Java 等开发环境也是可以的
以上几个命令只是简单举例,截止目前,Homebrew Cask 已经收录了近 2100 个软件,足够满足大多数人的需求。如果有的软件不想安装官方正版或者是搜索不到,可以使用如上提到第二种dmg安装方式。
️注意
这里特别指出网络上大部分命令是brew cask install
但是现在命令已经更改,直接使用brew就可以

如图brew cask被解析为无效命令
此外在安装了brew cask后执行搜索命令会列出软件包及应用程序的搜索结果

其他命令可参阅
https://github.com/Homebrew/homebrew-cask
参考及引用
https://zhuanlan.zhihu.com/p/111014448
https://zhuanlan.zhihu.com/p/30704752
https://github.com/beeftornado/homebrew-rmtree
https://github.com/Homebrew/homebrew-cask
转载请注明出处
本文作者:双份浓缩馥芮白
原文链接:https://www.cnblogs.com/Flat-White/p/14463793.html
版权所有,如需转载请注明出处。
【macOS】Homebrew & Homebrew cask macOS软件包管理神器的更多相关文章
- Windows软件包管理工具:Scoop
前言 删库跑路后,Windows系统如何快速安装应用程序,部署环境呢? 以前想过这个问题,最近在安装Hugo时发现使用软件包管理工具可以解决这个问题. 阅读建议 首先需要测试下载速度,尝试从官网下载, ...
- [Linux实践] macOS平台Homebrew更新brew update卡死,完美解决
[Linux实践] macOS 平台 Homebrew 更新 brew update 卡死,完美解决 版本2020.01.05 摘要: 使用brew install [软件包]安装软件包时,卡在Upd ...
- Mac 软件包管理器Homebrew使用指北
Homebrew Homebrew由开发者 Max Howell 开发,并基于 BSD 开源,是一个非常方便的软件包包管理器工具. Homebrew 官网 Homebrew 的几个核心概念 在正式介绍 ...
- Mac安装软件包管理工具Homebrew
PS:最近开始学习groovy,打算去官网下载SDK Bundle,可是官网半天加载不出来,而且莫名其妙就是下载不下来,Folx一直提示 "无效的HTTP相应:禁止",可能是插件和 ...
- Mac Pro 安装 Homebrew 软件包管理工具
Linux系统有个让人蛋疼的通病,软件包依赖,好在当前主流的两大发行版本都自带了解决方案,Red hat有 yum,Ubuntu有 apt-get. Mac os 中没有类似的东东,不过有第三方库支持 ...
- Mac OSX上的软件包管理工具,brew 即 Homebrew
brew 即 Homebrew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件, 只需要一个命令, 非常方便. brew类似ubuntu系统下的apt-get的功能. 安装 ...
- Mac 系统下类似于 apt-get 的软件包管理器 -- Homebrew
对于一个习惯了在 Ubuntu 的终端上通过 apt-get 来安装工具软件的我来说,也希望在Mac上找到类似的工具,能很方便的一条命令就能安装所需的软件,而不用手工的去查找下载编译,或者是折腾安装所 ...
- mac os x 10.9.1 安装 Homebrew软件包管理工具及brew安装maven3.1.1
Mac OSX上的软件包管理工具,安装软件或者卸载软件. 打开终端输入(如不行,可参考homebrew官网): ruby -e "$(curl -fsSL https://raw.githu ...
- Mac包管理神器Homebrew
概念 简称brew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件,相当于Red hat的yum.Ubuntu的apt-get. 安装命令 ruby -e "$( ...
随机推荐
- 使用 Castle 实现 AOP,以及 Autofac 集成 Castle
Castle 是 2003 年诞生于 Apache Avalon 项目,目的是为了创建一个IOC 框架.发展到现在已经有四个组件: ORM组件:ActiveRecord IOC组件:Windsor 动 ...
- Get optimized undo_retention size for Oracle
reference: https://www.akadia.com/services/ora_optimize_undo.html#:~:text=Turning%20on%20automatic%2 ...
- centos7.5+nginx+php急速配置
centos7.5+nginx+php急速配置 centosnginxphp 更新系统以及添加源 yum update yum -y install epel-release 安装php以及配置 yu ...
- Python - Asyncio模块实现的生产消费者模型
[原创]转载请注明作者Johnthegreat和本文链接 在设计模式中,生产消费者模型占有非常重要的地位,这个模型在现实世界中也有很多有意思的对应场景,比如做包子的人和吃包子的人,当两者速度不匹配时, ...
- 阅读源码,HashMap回顾
目录 回顾 HashMap简介 类签名 常量 变量 构造方法 tableSizeFor方法 添加元素 putVal方法 获取元素 getNode方法 总结 本文一是总结前面两种集合,补充一些遗漏,再者 ...
- dubbo实战之二:与SpringBoot集成
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Kubernetes 实战 —— 02. 开始使用 Kubernetes 和 Docker
创建.运行及共享容器镜像 P23 运行容器 P24 运行 P24 可以运行 Docker 客户端可执行文件来执行各种 Docker 命令.例如:可以试着从 Docker Hub 的公共镜像仓库拉取.运 ...
- 【odoo14】第三章、创建插件
现在我们已经有了开发环境并了解了如何管理实例及数据库,现在让我们来学习下如何创建插件模块. 本章内容如下: 创建和安装模块 完成manifest文件 组织模块文件结构 添加模型 添加菜单及视图 添加访 ...
- Hibernate学习实例
一 Hibernate简介 Hibernate是一种Java语言下的对象关系映射(ORM)解决方案.为面向对象的领域模型到传统的关系型数据库的映射提供了一个使用方便的框架. 二 Hibernate设计 ...
- BeautifulSoup爬取微博热搜榜
获取url 设定请求头 requests发出get请求 实例化BeautifulSoup对象 BeautifulSoup提取数据 import requests 2 from bs4 import B ...