如何让shell脚本等待pkg完成安装

时间:2015-08-06 17:38:42

标签: macos bash shell

我试图运行一个脚本来安装dmg,打开一个pkg,然后卸载。

#!/bin/sh

echo "Mounting Volume"
hdiutil attach -quiet "/path/to/DMG"
echo "Open pkg"
open /Volumes/DMG/pkg
echo "Unmounting volume"
hdiutil detach -quiet /Volumes/DMG
exit 0

这是我到目前为止所做的。

我希望脚本能够等待pkg完成安装然后卸载。我使用open而不是安装程序的原因是因为sudo需要标准输入,但是我在其他地方运行脚本,而用户无权访问标准输入。

2 个答案:

答案 0 :(得分:2)

使用-W命令的open标志。从手册页:“导致打开等待它打开的应用程序(或已经打开的应用程序)已退出。”

答案 1 :(得分:0)

我认为您可以使用wait命令。如果要在执行其他命令之前等待程序,则只需添加wait命令。

更多信息: http://ss64.com/bash/wait.html