我正在尝试找出一种方法来识别Objective C中命令行工具的可执行路径.
因此,如果可执行文件是/ Applications/Utils/MyTool,那么该方法将返回/ Applications/Utils
我正在使用Foundation框架.
我假设/Applications/Utils/MyTool
,你的意思是"应用程序"目录中的"Utils"目录中名为"MyTool"的应用程序(实际上是路径/Applications/Utils/MyTools.app
).在这种情况下,您可以/Applications/Utils
使用以下代码获取应用程序所在的目录():
NSString *appParentDirectory = [[[NSBundle mainBundle] bundlePath] stringByDeletingLastPathComponent];
如果你必须,请叫我纯粹主义者 - 或者是仇恨者 - 但我"喜欢"
NSString *myLittleCLIToolPath = NSProcessInfo.processInfo.arguments[0];