xcode shell脚本可执行文件 - x标志持久性

时间:2014-08-24 06:22:53

标签: xcode macos shell

我在Xcode 6中有一个工作的OS / X应用程序。这个应用程序检查一些输入,然后执行一个shell脚本。 shell脚本是bundle的一部分,即它在Supporting Files中作为“script.sh”。

每当我修改脚本时,我还必须通过终端chmod + x使其可执行以便Xcode运行来运行它。

有没有办法保留“script.sh”可执行标志?

1 个答案:

答案 0 :(得分:0)

选项1:在文件的源副本上设置+ x。当它被复制到您的应用程序包中时,它应该以类似的权限结束。

chmod 755 ~/Project/script.sh

在此之后,我能够在Xcode中编辑脚本,我的测试应用仍然可以正确运行。

选项2:通过/ bin / bash间接启动脚本(或任何适合您脚本的解释器),使+ x不必要。 e.g。

NSString *path = [[NSBundle mainBundle] pathForResource:@"script" ofType:@"sh"];
NSTask *task = [NSTask launchedTaskWithLaunchPath:@"/bin/bash" arguments:@[path]];
[task waitUntilExit];