当前位置:  开发笔记 > IOS > 正文

如何在Objective C(Foundation框架)中获取命令行工具的可执行文件路径?

如何解决《如何在ObjectiveC(Foundation框架)中获取命令行工具的可执行文件路径?》经验,为你挑选了2个好方法。

我正在尝试找出一种方法来识别Objective C中命令行工具的可执行路径.

因此,如果可执行文件是/ Applications/Utils/MyTool,那么该方法将返回/ Applications/Utils

我正在使用Foundation框架.



1> mipadi..:

我假设/Applications/Utils/MyTool,你的意思是"应用程序"目录中的"Utils"目录中名为"MyTool"的应用程序(实际上是路径/Applications/Utils/MyTools.app).在这种情况下,您可以/Applications/Utils使用以下代码获取应用程序所在的目录():

NSString *appParentDirectory = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];


似乎`NSBundle`*应该*在AppKit中,因为命令行应用程序通常没有捆绑包; 但正如你明显发现的那样,命令行app*可以*有一个捆绑,所以我猜这就是为什么`NSBundle`是Foundation kit的一部分.

2> Alex Gray..:

如果你必须,请叫我纯粹主义者 - 或者是仇恨者 - 但我"喜欢"

NSString *myLittleCLIToolPath = NSProcessInfo.processInfo.arguments[0];

推荐阅读
凹凸曼00威威_694
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有