brew又叫homebrew,是macos上的一个包管理工具,能够在mac中方便的进行包管理,类似于ubuntu系统下的apt-get,记得自己第一次接触brew是为了在mac上安装一个独立绿色的视频播放器,因为mac自带的播放器QuickTime Player实在是太简陋了。多方查找资料后发现了IINA这款软件。让我没想到的是,这款软件不是我熟悉的通过.dmg文件安装,而是需要通过他们所说的一个叫brew的东西来安装。这可能是我接触自由软件世界的第一个窗口,仍然记得当时在终端中运行brew cask install iina,看到屏幕中打印出来的进度条,然后IINA被安装到applications中的那种惊喜感。而且发现使用的是清华的镜像源,心想我们学校Linux协会也太没牌面。

  安装brew的方法很简单,按照官网上的说明在终端中运行对应的命令即可。下面介绍brew的常用命令。

  上面这个图是在终端中运行brew的结果,已经涵盖了brew最最常用的一些命令。

brew list                    #列出所有安装的包
brew search + 包名 #在源中搜索期望的包
brew info + 包名 #在源中搜索期望的包,并且打印更详细的信息
brew install + 包名 #安装对应的包
brew uninstall + 包名 #卸载已经安装的包
brew updata #升级brew

  下面是brew稍微不常用但是也非常有用的命令:

brew deps + 包名          #显示包的依赖
brew link + 包名 #将包link到环境中
brew unlink + 包名 #brew link的逆操作

  brew deps显示了该包依赖的其他包,强烈建议在安装包之前三步走:search deps info,这样会极大程度上避免安装和自身不兼容的包。而且防止安装许多不需要的包。

  关于brew link则需要了解一个概念-> keg-only ,字面翻译,装在桶里。也就是说这个软件虽然被brew下载下来了,但是却没有被系统所使用,也就是没有被加入到环境变量里。默认brew install是进行了brew link操作的,但是如果出现冲突,软件就会变成keg-only状态,这时候需要brew link使brew安装的软件发挥作用。同时,如果不想使用brew安装的软件,brew unlink就是很好的选择,环境变量会指向其他的包。比如使用brew安装python,很容易会和环境中原来的python冲突,brew unlink则会失能brewpython。这时候需要仔细看自己将要安装的包的依赖里是否有python,如果有的话很可能会出现意想不到的情况。

  细心的朋友可能发现,我安装IINA没有使用brew install,而是使用了brew cask install。他们的区别是什么呢?brew install安装的东西,在brew里被称作formula,其实也就是从网上下载源码,然后make,build,这样就可以在本地安装对应软件。brew cask install安装的则是已经编译打包好的软件包。不难想象brew cask安装的软件很容易的被移动到了applications文件夹里。

Homebrew命令总结的更多相关文章

  1. 常用的Homebrew命令

    一些常用的Homebrew命令: 更新:brew update 安装包信息检索:brew info 安装包搜索:brew search foo 安装包列表:brew list 过时信息:brew ou ...

  2. Homebrew命令具体解释

    Homebrew命令具体解释 作者:chszs,未经博主同意不得转载.经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs 一.安装Homebrew Shell环境下 ...

  3. homebrew命令

    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  4. Homebrew 命令

    安装(需要 Ruby):ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)" 搜索 ...

  5. homebrew学习(三)之homebrew命令

    安装homebrew: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/m ...

  6. Windows上使用Linux命令

    WSL Windows Subsystem for Linux(简称WSL)是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层.它是由微软与Canonical公 ...

  7. [Linux实践] macOS平台Homebrew更新brew update卡死,完美解决

    [Linux实践] macOS 平台 Homebrew 更新 brew update 卡死,完美解决 版本2020.01.05 摘要: 使用brew install [软件包]安装软件包时,卡在Upd ...

  8. 01.Homebrew

    1.homebrew 的安装 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/ ...

  9. Mac安装homebrew,postman,charles

    Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装.卸载.更新.查看.搜索等很多实用的功能.简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷. 1. ...

随机推荐

  1. Java并发(3)

    线程安全: 允许被多个线程同时执行的代码称作线程安全的代码.线程安全的代码不包含竞态条件.当多个线程同时更新共享资源时会引发竞态条件.因此,了解Java线程执行时共享了什么资源很重要. 局部变量: 局 ...

  2. pyenv,轻松切换各种python版本

    pyenv,轻松切换各种python版本 解决什么问题 mac自带python2,md又不能删掉他 linux也自带python2,这玩意都过时了,也不赶紧换掉 安装pyenv git 安装 git ...

  3. 【github龟速克星】如何下载快如闪电

    详见:https://www.kesci.com/home/project/5e96fe1ae7ec38002d03cd56 借助第三方网站:https://g.widora.cn/

  4. Angular SPA基于Ocelot API网关与IdentityServer4的身份认证与授权(二)

    上文已经介绍了Identity Service的实现过程.今天我们继续,实现一个简单的Weather API和一个基于Ocelot的API网关. 回顾 <Angular SPA基于Ocelot ...

  5. tomcat——启动项目报错:java.lang.IllegalStateException

    java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' befo ...

  6. Mysql批量导入多个sql文件

    DB_edusuntk文件夹下有2000多个个sql备份文件,如何批量导入?首先新建一个main.sql,然后在main.sql文件里面这么写: source C:/sql/1.sql; source ...

  7. 大O符号初学者指南

    原文地址:https://rob-bell.net/2009/06/a-beginners-guide-to-big-o-notation/ 计算机科学中,大O表示法被用来描述一个算法的性能或复杂度. ...

  8. 跟着阿里学JavaDay06——Java基础语法(四)

    一.方法 方法执行到return语句后,这个方法的执行就结束了,方法可以有返回值,但可以不用这个返回值.方法首先要定义,然后才能调用. public class TestMethod{ public ...

  9. JAVASE(十四) 集合: 数组和集合、Collection、Iterator、List、Set、Map

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 1.数组和集合 1.1 内存中对数据进行存储和管理的“容器”:数组,集合 1.2 数组存储的特点和缺点 ...

  10. Java实现 蓝桥杯 算法提高 7-1用宏求球的体积

    算法提高 7-1用宏求球的体积 时间限制:1.0s 内存限制:256.0MB 问题描述 使用宏实现计算球体体积的功能.用户输入半径,系统输出体积.不能使用函数,pi=3.1415926,结果精确到小数 ...