Homebrew使用教程(macOS)

这篇具有很好参考价值的文章主要介绍了Homebrew使用教程(macOS)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

简介

Homebrew是一个开源的软件包管理工具,它的主要开发语言是Ruby,项目托管在GitHub上。

目前,Homebrew只能通过命令行终端使用,没有图形化操作界面。因此,这个工具更适合有编程基础的人使用。

官方介绍,Homebrew可以用在macOS系统或Linux系统上管理软件包。但实际上,它在Linux系统上并不流行,更多的还是用于macOS系统,逐渐成为除AppStore之外,另一个实用的软件包管理工具。

软件包管理有几个主要方面:搜索、查看、安装、更新、卸载。Homebrew对这几个方面都有较为良好的支持,使用起来相当便捷。

Homebrew安装

官网地址:https://brew.sh/index_zh-cn

安装命令:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 安装完成查看Homebrew版本
brew --version

卸载命令:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"

安装问题

换了一台新电脑,初次安装的时候遇到个问题:

zhongxing@Crystal ~ % /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
curl: (7) Failed to connect to raw.githubusercontent.com port 443 after 5 ms: Couldn't connect to server

zhongxing@Crystal ~ % ping raw.githubusercontent.com
PING raw.githubusercontent.com (0.0.0.0): 56 data bytes
ping: sendto: Socket is not connected
ping: sendto: Socket is not connected
Request timeout for icmp_seq 0
ping: sendto: Socket is not connected
Request timeout for icmp_seq 1

网上给出的解决方案,大概有两种:

  1. 将Homebrew下载下来,本地手动安装
  2. 通过https://www.ipaddress.com查询raw.githubusercontent.com对应IP地址,然后添加到/etc/hosts文件中,再执行安装命令

第一种方案我嫌麻烦没尝试;第二种方案有人说成功了,但是我改完hosts文件后再执行命令卡住很久没动,我就主动中断了,没验证完。

最后无意间想了一下第二种方案的原理,猛然意识到可能是DNS的问题,因为新电脑联网后还没做过多设置,默认用的是国内DNS服务,可能存在污染。最后换成Google Public DNS,就解决问题了,安装过程中也有卡住一段时间。

8.8.8.8 (google-public-dns-a.google.com)
8.8.4.4 (google-public-dns-b.google.com)

Homebrew术语

首先要理解什么是Homebrew软件包?

Homebrew软件包是一类Ruby脚本,其中定义了目标软件包的版本,以及如何管理安装目标软件包的流程。正常情况下,Homebrew软件包名称会和目标软件包名称保持一致。

按照管理方式的不同,Homebrew软件包又分为两类:formula、cask。

Formula

formula管理的目标软件包,其特点是要走源码编译安装流程,例如wget,这类目标软件包通常都是没有图形化操作界面的,只能通过命令行终端使用。

因为下载目标软件包源码进行本地编译安装的过程,通常都是比较原始且耗时的,所以大部分情况下,目标软件包的官方会提供编译好的二进制文件,formula可以直接下载编译好的二进制文件进行本地安装即可,避开本地编译过程,提高软件包的安装效率。

官方将这些提前编译好的二进制文件,叫做bottle。

默认情况下,formula软件包的安装路径是/usr/local/Cellar,官方称这个路径为cellar。

Cask

cask管理的目标软件包,其特点是要走应用包安装流程,例如firefox,这类目标软件包通常都是有图形化操作界面的。

在macOS系统上,应用包就是dmg包,所以,cask管理模式就是自动化了目标dmg包的安装过程,和手动下载dmg包安装效果是一样的,区别只是该软件包被纳入了Homebrew的管理范围。

默认情况下,cask软件包的安装路径是/usr/local/Caskroom,官方称这个路径为caskroom。

需要注意的是,因为目标软件包是dmg包,所以会按照macOS系统规范,被安装到应用程序(/Applications)当中,cask软件包会创建软连接指向真实的目标应用程序,从而达到管理的目的。

Tap

这个术语表示Homebrew软件包仓库,通常都是Git管理的仓库。

官方提供有两个核心仓库:

  1. homebrew-core仓库,对应formula管理模式
  2. homebrew-cask仓库,对应cask管理模式

除此之外,还有非官方提供的软件包仓库和各种镜像仓库,只要符合Homebrew软件包管理规范的仓库,都可以称之为tap。

Homebrew常用命令

brew search, -S [options] text|/regex/ […]

搜索软件包,可以用软件包名称的关键字或者正则表达式作为搜索条件。

# 不限定管理模式,formula软件包和cask软件包都会搜索
brew search wget
brew search firefox
# 只搜索formula软件包
brew search --formula wget
# 只搜索cask软件包
brew search --cask firefox

brew update [options]

获取Homebrew版本,以及所有formula、cask的可安装版本信息,同时也能看到本地已安装软件包哪些过时了。

brew update

brew install [options] formula|cask […]

安装软件包

# 优先尝试安装formula软件包,没有的话,再尝试安装cask软件包
brew install wget
brew install firefox
# 指定安装一个formula软件包
brew install --formula wget
# 指定安装一个cask软件包
brew install --cask firefox

brew reinstall [options] formula|cask […]

重新安装软件包,如果之前有安装过,就卸载掉之前的重新安装,如果之前没有安装过,就直接安装。

# 重新安装某个软件包,软件包选择顺序依旧是先formula再cask
brew reinstall wget
brew reinstall firefox
# 重新安装formula软件包
brew reinstall --formula wget
# 重新安装cask软件包
brew reinstall --cask firefox

brew upgrade [options] [outdated_formula|outdated_cask …]

更新本地已安装的,但已不是最新版本的软件包。该命令和reinstall有点类似,都是对软件包进行卸载重装,区别是upgrade命令可以自动带上前一次安装时的options参数。

# 更新所有已过时的软件包,并且会自动使用它们上一次被安装时的options参数进行重新安装
brew upgrade
# 更新指定的formula软件包
brew upgrade wget
# 更新指定的cask软件包
brew upgrade firefox

brew uninstall, remove, rm [options] installed_formula|installed_cask […]

卸载已在本地已安装的软件包。

# 卸载本地已经安装的软件包
brew uninstall wget
brew uninstall firefox
# 卸载本地已安装的formula软件包
brew uninstall --formula wget
# 卸载本地已安装的cask软件包
brew uninstall --cask firefox

brew list, ls [options] [installed_formula|installed_cask …]

查看本地已安装的软件包。

# 查看所有已安装的软件包名称,包括formula和cask
brew list
# 查看所有已安装的formula软件包名称
brew list --formula
# 查看所有已安装的cask软件包名称
brew list --cask
# 查看已安装的软件包wget的文件信息
brew list wget
brew list --formula wget
# 查看已安装的软件包firefox的文件信息
brew list firefox
brew list --cask firefox
# 查看所有已安装的软件包的名称及版本信息
brew list --version
# 查看已安装的软件包wget的名称及版本信息
brew list --version wget
# 查看已安装的软件包firefox的名称及版本信息
brew list --version firefox

brew info, abv [options] [formula|cask …]

查看软件包的一些基本信息和统计数据,就是一些大概的情况。

# 可以统计出本地安装了多少个formula软件包,共有多少文件,占用多少空间
brew info
# 可以看到软件包的概况,比如它来源于哪里,构建工具是什么,依赖有哪些,和哪些软件包有冲突,近期的分析统计数据
brew info wget
brew info --formula wget
brew info firefox
brew info --cask firefox

brew home, homepage [–formula] [–cask] [formula|cask …]

通过浏览器打开目标软件包的官网。

# 打开Homebrew官网
brew home
# 打开wget官网
brew home wget
brew home --formula wget
# 打开firefox官网
brew home firefox
brew home --cask firefox

brew outdated [options] [formula|cask …]

检查本地已安装的软件包版本是否已经过时,命令执行后会展示出已过时的软件包名称、本地安装版本号,最新版本号。

# 展示所有已安装且版本已过时的软件包
brew outdated
# 展示所有已安装且版本已过时的formula软件包
brew outdated --formula
# 展示所有已安装且版本已过时的cask软件包
brew outdated --cask
# 展示某个已安装且版本已过时的cask软件包,如果没有过时,就什么也不展示
brew outdated wget
brew outdated --formula wget
brew outdated firefox
brew outdated --cask firefox

brew cleanup [options] [formula|cask …]

对本地软件包进行清理。分两种情况:

  1. 如果某个软件包安装有多个版本,会保留相对最新的版本,清理卸载掉其它旧版本
  2. 如果某个软件包不是最新版本,Homebrew会认为这是一个应该清理掉但实际并未清理的软件包,从而给出一个警告(可忽略)

如果经常使用Homebrew,可能会积攒出很多旧版本的软件包,执行该命令可能会释放出很多的硬盘空间。

# 针对所有已安装软件包执行清理动作
brew cleanup
# 针对某个已安装软件包执行清理动作
brew cleanup wget
brew cleanup --formula wget
brew cleanup firefox
brew cleanup --cask firefox

brew tap [options] [user/repo] [URL]

  1. 查看本地已关联的Homebrew软件包仓库
  2. 新增关联一个Homebrew软件包仓库
# 没有跟任何参数,就是查看本地已关联的Homebrew软件包仓库
brew tap

# 指定了user/repo,没有指定URL,则默认这是个GitHub仓库,仓库地址满足固定格式
brew tap <user/repo>
brew tap <user/repo> https://github.com/<user>/homebrew-<repo>

# 指定了URL,则认为这不是一个GitHub仓库
brew tap <user/repo> <URL>
# 这种情况下,关联仓库后要多做一件事情,作用是让Homebrew可以自动更新这个tap
brew tap --force-auto-update <user/repo>
# 上述两个命令可以合成一个
brew tap --force-auto-update <user/repo> <URL>

# 已关联仓库,都存储在macOS系统Library中
cd $(brew --repository)/Library/Taps

同时关联多个tap,可能会遇到一种情况:一个软件包同时存在于多个tap中,并且它们的版本不同。

此时,若是执行软件包安装命令,会优先选择Homebrew官方tap,其次才是其它tap。

这种场景下,如果Homebrew选择的不是目标tap,解决方案就是指定软件包的全名称:

# 因为homebrew/core仓库有vim软件包,所以会被优先选择
brew install vim
# 从指定了tap安装vim软件包
brew install username/repo/vim

brew untap [–force] user/repo [user/repo user/repo …]

取消本地已关联的Homebrew软件仓库。文章来源地址https://www.toymoban.com/news/detail-498302.html

# 取消关联一个软件仓库
brew untap <user/repo>
# 同时取消关联多个软件仓库
brew untap <user/repo> <user/repo>
# 强制取消关联一个软件仓库,该仓库内已有软件包安装到本地,不想卸载软件包
brew untap --force <user/repo>

到了这里,关于Homebrew使用教程(macOS)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MacOS安装Homebrew

    目录 一、Homebrew介绍 1、Homebrew的好处 2、安装方式 方法一:brew官方安装 方法二:brew 镜像安装脚本(亲测最快速最有效) 二、安装步骤 1、安装国内镜像 2、配置路径 3、必备配置、按需配置 1.必备设置 2.按需设置 4、Homebrew 安装时如何避坑 1.若出现 Error: Checksum mismatch. 2.若卡

    2024年02月01日
    浏览(37)
  • macos homebrew 源更改

    Homebrew官方的源一般下载包之类的会很慢,所以通常我们都是用国内的镜像源来代替,这样会提高我们的效率。Homebrew主要有四个部分组成: brew、homebrew-core 、homebrew-bottles、homebrew-cask。 名称 说明 brew Homebrew 源代码仓库 homebrew-core Homebrew 核心软件仓库 homebrew-bottles Homebrew 预编译

    2024年02月12日
    浏览(32)
  • macOS 安装 Homebrew 详细过程

    本文讲解了如何使用中科大源安装 Homebrew 的安装过程,文章里面的所有步骤都是必要的,需要的同学直接复制粘贴到您的 Terminal(终端程序) 中运行即可. Homebrew 简介 Homebrew 是一个开源的包管理器,专为 macOS 设计,但后来也被扩展到了 Linux。它允许用户轻松地安装、更新和管理软

    2024年02月11日
    浏览(42)
  • Homebrew下载安装及使用教程

    简单来说,就是用命令行的形式去管理mac系统的包或软件。 国内请使用镜像源进行下载 执行上述命令后会要求 输入系统密码 ,输入后会暂停提示将会在系统中安装哪些文件脚本等,按回车键即可继续。 出现Installation successful!后,注意看下面的Next steps,会要求你依次输入指

    2024年02月10日
    浏览(27)
  • MacOS安装Homebrew / zsh / oh my zsh

    最近又重新配置电脑环境,记录一下~ 1. 安装Homebrew Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。安装Homebrew以后,简单的一条指令就可以实现包管理,而不用关心各种依赖和文件路径的情况,十分方便快捷。  比如在

    2024年02月09日
    浏览(42)
  • MacOS M1命令行安装homebrew、node、git、docker

    1、安装homebrew、node、git 1.1 安装homebrew 创建安装目录并设置其权限 进入 opt 目录下载homebrew并解压 输入序列号选择下载源、是否执行脚本以及输入Mac开机密码 注意如果弹出要需要安装工具的选项,安装完成后要再重新执行上述步骤; brew安装成功后,输入序列号配置国内源,

    2024年01月20日
    浏览(44)
  • 【macOS】mac电脑M2芯片安装Homebrew 最简单的方法

    一 Homebrew的安装 打开终端,复制如下命令,按回车执行 M芯片和Intel芯片均可 中途可能需要你手动输入密码,输入完成回车即可(密码不可见 选择中科大或者清华镜像源 有些同学可能会弹出安装git的提示,点击安装等待即可 安装完成之后重新执行上面的Homebrew安装命令 这时

    2024年02月03日
    浏览(49)
  • 简介:在这篇教程中,我们将使用React.js框架创建一个简单的聊天机器人的前端界面,并利用Dialogflo

    作者:禅与计算机程序设计艺术 介绍及动机 聊天机器人(Chatbot)一直是互联网领域中的热门话题。而很多聊天机器人的功能都依赖于人工智能(AI)技术。越来越多的企业希望拥有自己的聊天机器人系统,从而提升自己的竞争力。为此,业界也出现了很多基于开源技术或云

    2024年02月06日
    浏览(41)
  • HTML5游戏引擎(一)-egret引擎简介——一个开源免费的游戏框架

    游戏行业发展迅速, 给程序员提供了大量就业 (斗鱼, 微派, 腾讯, 蓝月, 网易 等等) 游戏开发薪资普遍比较高 (王者荣耀 , 蓝月) 游戏已经普遍被大众所认可,并且发展成一种竞技体育 重点学习Egret Typescrit 语法学习 一笔带过Cocos2d-x Egret跨平台,入手容易,性能较好,更

    2024年02月05日
    浏览(57)
  • 【新手教程】如何在Win11上制作一个模仿MacOS的桌面?

    起因是早上蹲坑的时候偶然间在小红书上刷到一篇文章,看了下效果图感觉还不错,所以按照文章作者的流程来了一遍。过程中也遇到了一些小问题,正好放假了有空就写一篇文章记录一下。先放一下效果: Dock栏是啥玩意?作为一个不熟悉苹果操作系统的用户,没见过这个

    2024年02月06日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包