从DMG中提取

时间:2012-07-26 23:25:41

标签: macos extract dmg

如何在不安装的情况下提取DMG的内容? 我想在我的应用程序中添加autoupdate系统。它从网站下载DMG,然后从中提取新版本的应用程序。

3 个答案:

答案 0 :(得分:9)

可以使用7-zip提取一些.dmg个文件。

$ 7z x your.dmg
$ ls
your.dmg
0.MBR
1.Primary GPT Header
2.Primary GPT Table
3.free
4.hfs
5.free
6.Backup GPT Table
7.Backup GPT Header

...并在提取4.hfs文件之后:

$ 7z x 4.hfs

...您将获得.dmg文件的内容。

您还可以使用.dmg命令(Homebrew Cask也使用)将hdiutil挂载到Mac OS X中。

有关Linux上的更多用例,请参阅this Ask Ubuntu question

答案 1 :(得分:0)

Dmg只是用于MacOS的一种格式。这是未经压缩的文件格式,例如ziptar.gz 您有多种选择来安装它。这是一些选项。

  1. 双击将其安装。
  2. 使用hdiutil attach your.dmg挂载dmg文件。安装后 操作命令行以提取您想要的文件。

答案 2 :(得分:-4)

这样做与DMG的设计背道而驰,所以非常痛苦。 DMG设计用于安装,即整个 raison d'être。如果你想做那样的话,你需要rely on experimental code。使用非DMG存档(如zip文件)或使自动更新过程下载,装载,卸载您提供的DMG文件可能会更好。