mac镜像转换

经常从某家网站上下载mac下的软件

后果就是下载到一堆带密码的dmg

精神洁癖认为带密码的dmg文件不适合收藏备用……所以就要把密码删掉,这个时候可以用mac下自带的hdiutil进行镜像转换,在转换的时候把密码删掉,运气好的时候还能把镜像压缩压缩。

用法:hdiutil convert -format -o 其中 是指需要生成的镜像文件的格式,不同的格式有不同的效果,有的只读,有的压缩,有的可读写。当然速度也不一样。下面是我把mac下支持的一些格式转换速度和压缩比列出来:

格式 转换速度 缩减比例(比原来无压缩文件缩减了多少) UDRO - 只读 25.6 Mb/s -18.6%
UDCO - 已压缩(ADC) 1.8 Mb/s -64.6%
UDZO - 压缩 28.9 Mb/s -67.8%
UDBZ - 已压缩 (bzip2) 11.0 Mb/s -71.8%
UFBI - 整个设备 24.5 Mb/s -0%
UDRW - 读/写 18.5 Mb/s -0%
UDTO - DVD/CD 主映像 17.5 Mb/s -0%

根据这些数据可以看到,最快的竟然压缩比也超级高,所以我们一般用UDZO格式。

例如:

hdiutil convert ~/Downloads/coda_test.dmg -format UDZO -o ~/Downloads/coda.dmg  

系统会提示你输入密码,密码输入正确后就会自动执行转换,转换出来的就是没密码的镜像文件。

本来打算做个applescript用来通过拖拽进行批量的转换,最近比较忙一直没空开工。有谁有兴趣可以做一个试试。

其中有个关键技术就是怎么把密码自动的输入到这个终端程序里头。我们可以通过unix中的“管道”功能,把一个字符串显示地传送到终端中。例如:

echo "www.macx.cn"|hdiutil convert ~/Downloads/coda_test.dmg -format UDZO -o ~/Downloads/coda.dmg  

Friskit

继续阅读此作者的更多文章