Question

As part of my build process I'm trying to mount a DMG using hdiutil.

I've written a shell script to do this, and because hdiutil asks for confirmation of the license agreement before opening, I have in my script something like yes | hdiutil .... When I run the script from a bash shell like Terminal.app there are no problems and the process works as expected.

However, when I add an 'external build system' target to Xcode and have /bin/bash run my script, it hangs forever after executing the hdiutil command.

I'm guessing that yes is not terminating; what would cause this to behave differently when the script is invoked by a GUI app as opposed to an interactive bash shell and how can I make it work using both approaches?

Was it helpful?

Solution

I needed to use echo y | hdiutil isntead of yes | hdiutil as suggested by @trojanfoe.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top