当我在模拟器中构建和运行 iOS 应用程序时,我希望能够在后台运行脚本(即不阻塞构建过程)。我已经尝试过osascript /path/to/script &
,并且还为一个单独的 shell 脚本做同样的事情,但都没有工作;构建停止,我必须强制退出 XCode。
有任何想法吗?
当我在模拟器中构建和运行 iOS 应用程序时,我希望能够在后台运行脚本(即不阻塞构建过程)。我已经尝试过osascript /path/to/script &
,并且还为一个单独的 shell 脚本做同样的事情,但都没有工作;构建停止,我必须强制退出 XCode。
有任何想法吗?
作为构建阶段的一部分,我在运行后台脚本时遇到了同样的麻烦,但以下在我的情况下确实有效。该脚本在我的应用程序运行时在后台运行。显然,除了使用“&”之外,您还必须重定向标准输出。使用以下格式。(我的脚本位于目录'~/Desktop/splint_server/')
~/Desktop/splint_server/run.sh > ~/Desktop/splint_server/test 2>&1 &
~/Desktop/splint_server/run.sh
这会在(将脚本的路径放在那里)运行任意脚本。输出被重定向到一个名为“test”的日志文件。
有关 I/O 重定向的更多信息http://www.tldp.org/LDP/abs/html/io-redirection.html
以防你仍然感兴趣。
这些是您需要遵循的步骤: 1. 将脚本的 .sh 扩展名更改为 .command 2. 现在开始使用“open /path/to/script.command”而不是调用 /path/to/script.sh
差不多就是这样。
这将启动一个新的终端窗口并在其中运行您想要的脚本。
您可以在方案设置中使用构建的后期操作。
“睡眠 100&”工作正常