MacOS 系统使用命令安装软件包

Linux 操作系统各发行版都有自己的软件包管理器,如 Ubuntu 的 apt-get ,Fedora 的 yum 及 Arch 的 pacman 等。安装软件不要太方便。
而 MacOS 系统可在 Appstore 中获取安装软件,或者从网上下载 pkg 格式的安装包双击运行。
其实 MacOS 系统下也有一个很强大的包管理软件 Homebrew (以及 Homebrew-Cask),使用方便,功能强大。但不是内置软件,需要自己手动安装。
其实 pkg 格式的安装包,一样可以通过命令(install)来安装。而常见的 dmg 格式的软件包,其实只是将安装文件又打包成了 dmg 磁盘镜像。挂载后即可继续操作。

一、Homebrew & Homebrew-Cask

Homebrew

1. Homebrew

Homebrew 是 MacOS 系统里的软件包管理系统,类似于 Ubuntu 中的 apt-get ,这个软件本身安装起来也很简单。

Homebrew 官网提供了安装命令:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
将该命令直接复制到 terminal 中并运行,执行完成后即可使用 brew 命令搜索或安装软件了。

2. Homebrew-cask

Homebrew-cask 相当于 Homebrew 的扩展,区别在于,brew 命令首先获取程序源码然后编译安装(包括依赖库),并自动做好必要的配置(如环境变量等);而 brew cask 命令是下载已经编译好的应用包并放在统一的目录中。

安装好 Homebrew 后,可使用 brew tap caskroom/cask 命令直接安装 Homebrew-cask 。

3. 常用命令选项
  • install <formula> :安装软件
  • uninstall <formula> :卸载软件
  • update :使用 git 获取最新版本的 Homebrew
  • list :列出所有已通过 brew 命令安装的软件
  • search <text|/text/> :通过关键字 text 搜索可供安装的软件,如搜索关键字为 /text/ ,则表示由 text 组成的正则表达式
  • info <formula> :获取软件包的简要信息

更多用法可参考:man brew

brew
brew cask

二、安装 pkg 软件包

在图形界面下,pkg 软件包可以直接双击运行。而命令行界面下,也可以使用 installer 命令进行安装。
命令格式:sudo installer -pkg <package> -target /
installer

三、dmg 格式的软件包

dmg 格式的磁盘镜像文件,通常是对应用程序文件或安装程序的打包压缩。所以安装时需要先使用 hdiutil 命令挂载 dmg,再根据文件类型确定需要执行的安装操作。

1. 应用文件

像 Tor Browser 这种,下载下来是 dmg 格式的镜像文件,挂载后目录中是已编译好的应用程序文件,直接拖动到 Applications 文件夹即可安装成功。Tor Browser

在命令行中操作时,则需要先使用 hdiutil attach <imgFile> 挂载镜像文件(一般默认会挂载到 /Volumes 目录下),然后直接将应用程序复制到 /Applications 目录下即可。
dmg(app)

2. pkg 安装包

像 Wireshark 这种,挂载 dmg 文件后,目录中是已编译好的 pkg 安装包,则需要使用 installer 命令进行安装。Wireshark
命令行安装过程如下:
dmg(pkg)

附录

Linux 包管理器
1. pacman
  • pacman -S <package> 安装软件包
  • pacman -Ss <regex> 搜索软件包
  • pacman -Su 更新系统
  • pacman -Syu 同步源并更新系统

  • pacman -R <package> 删除软件包
  • pacman -Rc <package> 删除软件包及依赖该软件的包
  • pacman -Rs <package> 删除软件包,及其所有未被其他软件包使用的依赖关系
  • pacman -Rsc <package> 卸载软件及其依赖的包

  • pacman -Sc 清理 /var/cache/pacman/pkg 目录下的旧软件包
  • pacman -Scc 清理所有缓存的软件包和数据库
  • pacman -U <path_to_package> 安装本地的软件包

  • pacman -Qi <package> 显示已安装软件包的信息大小、安装日期、创建日期、依赖关系、冲突等)
  • pacman -Qip <package.tar.gz> 显示未安装软件包的信息
  • pacman -Ql <package> 显示软件包所包含的文件列表
2. apt-get
  • apt-cache search <package> 搜索软件包
  • apt-cache show <package> 获取软件包的信息
  • apt-get install <package> 安装软件包
  • apt-get -f install <package> 修复安装
  • apt-get remove <package> 卸载软件包
  • apt-get purge <package> 卸载软件包(包括删除配置文件等)

  • apt-get update 更新软件源
  • apt-get upgrade 更新已安装的软件包
  • apt-get dist-upgrade 升级系统
3. yum
  • yum update 更新所有软件包
  • yum update <package> 更新指定的软件包
  • yum install <package> 安装软件包
  • yum remove <package> 删除软件包
  • yum search <pattern> 搜索匹配特定内容的软件包
  • yum info <package> 查看软件包信息
  • yum clean 清除缓存和旧的包
  • yum list installed 列出已安装的软件包