使用posix函数显示所有进程

Sea*_*ock 3 c ubuntu posix

我试图在Ubuntu中显示当前正在运行的进程.

现在我正在使用system()函数在终端中打印运行进程.码:

system("ps -A");
Run Code Online (Sandbox Code Playgroud)

此功能显示终端中的所有正在运行的进程.

但我希望使用POSIX功能来实现此功能.我不是在寻找现成的代码.

有人能指出我的功能名称还是任何手册?

bst*_*rre 5

ps 是一个POSIX命令.

popen 是一个POSIX API,用于读取命令的输出.

如果你想要一个纯POSIX方法(也许你希望它可以移植到一些不提供的操作系统/proc),你应该运行psPOSIX-only选项并从中获取输出popen.

因此,例如,您可能想要调用popen("ps -A -o pid=", "r");然后读取PID列表.