Homebrew- MAC上的包管理利器

包管理器是神马东西?让我们看看wikipedia上的介绍。
In software, a package management system, also called package manager, is a collection of software tools to automate the process of installing, upgrading, configuring, and removing software packages for a computer’s operating system in a consistent manner.
简单的来说,包管理器就是一个提供对一系列软件包的安装、卸载、升级的自动化工具。
包管理器大体分为两种,一种是管理预编译好的软件(Binary installation/Precomplied packages),如MAC上的App Store,Windows下的Windows installer。另一种是基于源码的安装包,通过编译脚本来安装软件(Sourcecode-based installation/installing using compile scripts),如MAC上的Homebrew,Linux上的apt-build。
今天就给大家讲解下Homebrew。
Homebrew官网上称自己为:
The missing package manager for OS X
即自己弥补了在OS X上无包管理器的缺陷。
需求环境
安装Homebrew
只需要在terminal下敲这样一行代码就行。
1 |
|
brew会被默认安装到/usr/local文件夹中。从上述命令可以看出homebrew是基于ruby的一款包管理器,并且host在github上。
使用
在Homebrew中支持安装的软件被称为Formula。
查看所有支持的Formual。可以在这里查看。如果不能上网的话可以通过
brew server来在本地开启一个server来查看。brew search [Formula], 搜索某个Formula是否被支持。brew install [Formula], 安装某个Formula。brew upgrade [Formula], 升级某个Formula。brew uninstall [Formula], 删除某个Formula。brew update, 更新brew支持的Formula列表。
所有的软件都会默认被安装到/usr/local/Cellar目录下,然后将部分可执行脚本文件通过软链接链接到/usr/local\bin目录下,这样我们就可以在Terminal下使用这些软件。
Homebrew对于Formula的管理是基于git的。你可以在/usr/local/下发现有一个.git的文件夹。通过查看.git目录下的config文件,可以知道其实目录是被链接到github上的一个repository。
1 |
|
你也可以为自己的软件加入到Homebrew的支持列表中。只需要写一个ruby脚本check in到其github中。
下面是一个脚本示例。
1 |
|
Homebrew- MAC上的包管理利器的更多相关文章
- MAC上的包管理利器
Homebrew- MAC上的包管理利器 2013-07-01 16:25 by 黄博文, 76 阅读, 0 评论, 收藏, 编辑 包管理器是神马东西?让我们看看wikipedia上的介绍. In s ...
- Mac上的包管理器Homebrew的介绍及安装和使用实践
Homebrew的作用 Homebrew是OS X上强大的包管理器,为系统软件提供了非常方便的安装方式,独特式的解决了包的依赖问题,并不再需要烦人的sudo,一键式编译,无参数困扰. 如何安装Home ...
- [转]Ubuntu上的包管理:dpkg,apt和aptitude
一直以来对于ubuntu的包管理的概念就是apt-get,偶尔手动装个包就是dpkg -i,现在觉得是要系统地了解一下这几个包管理的命令. 原文转自: http://zhouliang.pro/201 ...
- MacOS上的包管理工具
众所周知,Linux世界中存在着如apt-get.yum等强大而简单的包管理工具,而在Macos中同样存在类似的东西. 当前比较流行的主要有如下两种: 1.Homebrew(推荐):其官网地址brew ...
- mac上的mysql管理工具sequel pro
https://blog.csdn.net/wan_zaiyunduan/article/details/54909389 以前用过Plsql.Navicat.Workbench,现在换到mac上,用 ...
- Homebrew 1.0.0 发布,MacOS 上的包管理器,比如安装qt5keychain
神器,没有它不知道怎么用macos https://www.oschina.net/news/77367/homebrew-1-0-0 Mac OS X用户,qt5keychain可以使用homebr ...
- Homebrew 1.0.0 发布,MacOS 上的包管理器
神器,没有它不知道怎么用macos https://www.oschina.net/news/77367/homebrew-1-0-0
- Python - poetry(1)包管理利器的入门介绍
Python 虚拟环境详解 https://www.cnblogs.com/poloyy/p/15266382.html poetry 官方介绍 github:https://github.com/p ...
- windows上安装 包管理工具choco及scoop
1.安装 choco: 1.1.使用管理员方式打开 PowerShell 1.2.输入 Set-ExecutionPolicy RemoteSigned,输入 Y 1.3.安装 choco输入:iwr ...
随机推荐
- mysql 更改自动增长字段值的重新设定
今天在服务器上MYSQL库里的一个表插入数据,主键id是auto_increment自动增长类型的.发现插入的值从2247734开始,而实际上id的最大值才22722,不明原因. 删除了新增的,opt ...
- Rule of Modularity
As Brian Kernighan once observed, “Controlling complexity is the essence of computer programming.” . ...
- nwe
SELECT SUBSTR('20150601', 1, 6) AS CALC_MONTH, CHN.EMPLOYEE_CODE, CHN.CHANNEL_TYPE, ...
- Hdu OJ 5884-Sort (2016 ACM/ICPC Asia Regional Qingdao Online)(二分+优化哈夫曼)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5884 题目大意:有n个有序的序列,对于第i个序列有ai个元素. 现在有一个程序每次能够归并k个序列, ...
- [html]选项卡效果
晨间新闻 午间新闻 晚间新闻 视频新闻 <!doctype html> <html> <head> <meta charset="UTF-8&quo ...
- java io学习之File类
1.先看下四个静态变量 static String pathSeparator The system-dependent path-separator character, represented a ...
- Java 基础知识总结 (四、String)
四.String public final class String extends Object implements Serializable, Comparable<String>, ...
- 很实用的jQuery事件 - toggle() 方法
实例 切换不同的背景色: $("p").toggle( function(){ $("body").css("background-color&quo ...
- HTTP协议-引自孤傲苍狼博客
一.什么是HTTP协议 HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的 ...
- 巧用Javascript中的slice()
slice()是Javascript中Array的一个方法,定义是这样的. arrayObject.slice(start,end)作用是从原数组中从start到end位置截取出一个新的数组,返回值是 ...