Linux通过命令行建立dmg文件的方法
Linux系统操作中,很多人对dmg文件不甚了解,更不知道要如何创建dmg文件了,本文要给大家介绍的是Linux使用命令行建立dmg文件的方法,不了解的朋友可以来了解下。
什么是DMG文件,如何打开?
DMG格式是在MAC系统上的一个镜象文件,也可以说是压缩文件,如果你用PC且没有装MAC OS X for X86的话,就不要费力了。如果你是使用苹果机或在PC上装了MAC OS X for X86,在MAC系统上双击这个文件就可以解开了;如果想把这个文件烧录成DVD,用toast把文件烧成光盘即可:dmg=》disc image
命令行创建dmg
自动获取软件版本号
APP_NAME=Soulver
VERSION=$(/usr/libexec/plistbuddy -c Print:CFBundleShortVersionString: ${APP_NAME}.app/Contents/Info.plist)
DMG_BACKGROUND_IMG=Background.png
VOL_NAME=${APP_NAME} ${VERSION}
DMG_TMP=${VOL_NAME}-temp.dmg
DMG_FINAL=${VOL_NAME}.dmg
STAGING_DIR=。/Install
创建dmg
# 清理文件夹
rm -rf ${STAGING_DIR} ${DMG_TMP} ${DMG_FINAL}
# 创建文件夹,拷贝,计算
mkdir -p ${STAGING_DIR}
cp -rpf ${APP_NAME}.app ${STAGING_DIR}
SIZE=`du -sh ${STAGING_DIR} | sed ‘s/([0-9.]*)M(.*)/1/’`
SIZE=`echo ${SIZE} + 1.0 | bc | awk ‘{print int($1+0.5)}’`
# 容错处理
if [ $? -ne 0 ]; then
echo Error: Cannot compute size of staging dir
exit
fi
# 创建临时dmg文件
hdiutil create -srcfolder ${STAGING_DIR} -volname ${VOL_NAME} -fs HFS+
-fsargs -c c=64,a=16,e=16 -format UDRW -size ${SIZE}M ${DMG_TMP}
echo Created DMG: ${DMG_TMP}
设置dmg
DEVICE=$(hdiutil attach -readwrite -noverify ${DMG_TMP} |
egrep ‘^/dev/’ | sed 1q | awk ‘{print $1}’)
sleep 2
Linux命令行 linuxdmg