我正在开发一个命令行应用程序来帮助我启动任务,以通过返回一个BOOL来知道任务是否正在运行,问题出现在我需要做一个命令行并获取输出以供进一步解析。获取输出的命令解析在c/MacOSX
我在C/C++中编写它,所以我不能使用它的NSTask,关于如何实现目标的任何想法?
命令
sudo launchctl list -x [job_label]
如果我使用系统(),我无法获得输出,所以在进一步研究我的popen()来了,但没有成功那里。
在此先感谢。
我正在开发一个命令行应用程序来帮助我启动任务,以通过返回一个BOOL来知道任务是否正在运行,问题出现在我需要做一个命令行并获取输出以供进一步解析。获取输出的命令解析在c/MacOSX
我在C/C++中编写它,所以我不能使用它的NSTask,关于如何实现目标的任何想法?
命令
sudo launchctl list -x [job_label]
如果我使用系统(),我无法获得输出,所以在进一步研究我的popen()来了,但没有成功那里。
在此先感谢。
你会想创建一个管道,从中你可以读取程序的输出。这将涉及使用pipe
,fork
,exec*
,甚至可能是dup
。有一个很好的教程the linux documentation project。
您可以通过pipe()
,fork()
和exec*()
系列函数来实现自制方式,或者如果其约束符合您的要求,则可以使用popen()
。