我正在努力在NSPathControl将文件或文件夹放到文件夹或文件夹之后检索文件夹或文件的POSIX路径.
我是初学者,但我能够通过Destination这种方式从我的代码中获取控件(被调用)的值:
NSString *filepath;
filepath = [Destination stringValue];
Run Code Online (Sandbox Code Playgroud)
这给了我类似的东西
file://test/My%20New%20Project/
但我希望以POSIX路径形式:
/test/My New Project因为我需要将它传递给
NSTask正在运行的命令行程序.
有关如何将此内容NSString从URL格式转换为POSIX路径的任何建议?
我正在开发一个需要使用dd的应用程序(我在应用程序包中使用shell脚本执行此操作,从应用程序本身收集参数,进行一些检查然后启动dd).
要进行此操作,我需要使用root调用dd,我已经在StackOverflow上查看了几个解决方案.最简单的实现在我看来这个http://www.sveinbjorn.org/STPrivilegedTask
问题是我的NSTask进行了一些复杂的读/写操作(不存在于STPrivilegedTask中),并且不需要全部特权.
所以我在c中编写了一个小帮手工具,用我的应用程序中的正确参数调用我的脚本.我认为解决方案是使用STPrivilegedTask来启动我的小助手工具,所以我可以用root启动它(以及我的脚本和dd),并且在成功启动后不久我将帮助工具设置为非SUID(如果有任何错误,在app退出,应用程序启动等,我也会这样做...更安全).
我实现它并且工作得很好,也许它并不完美,但我认为完全在捆绑中,并且在SUID中使用辅助工具只是为了发射声音足够安全.
有什么想法吗?
谢谢!