macOS 磁盘映像 - 使用密码在终端中创建

macOS disk image - create in terminal with password

此处为 macOS 12.1。在 hdiutil 的手册页中,有一个使用密码创建磁盘映像的示例。

Creating an encrypted single-partition image without user interaction:
       printf pp|hdiutil create -encryption -stdinpass -size 9m sp.dmg

这行得通。它创建了一个带有密码的 9MB .dmg 文件,但我看不到密码是什么。我知道“printf”应该显示一些东西,但我不知道后面的“pp”是做什么的?

好吧,这很愚蠢。该示例在没有用户交互的情况下创建 .dmg 文件。正确的行是:

hdiutil create -encryption -stdinpass -size 9m sp.dmg

系统会要求您输入密码。要是再仔细看一下描述就好了

显示的命令以printf pp|开头,即命令printf、两个字母pp和一个竖线。 printf 输出它的参数(两个字母 p)。管道的作用是将这两个字母 p 发送到以下命令,如您所知,该命令要求输入密码。因此,您给 .dmg 的密码是 pp.


Fun fact. The pipeline was invented in 1973 by Douglas McIlroy and later coded by Ken Thompson (Inventor of the B programming language).