c - Solaris 中的 popen/pclose 问题

标签 c solaris

大家好,我希望任何人都可以帮助我。我正在运行一个简单的 C 程序,在 Solaris 8 中运行,并且在使用 popen/pclose 时发现了问题。

文件*流; 流 = popen("ps -ef | grep "模式");

如果(pclose(流)){ printf("流中没有发生错误\n"); }

grep 命令中的模式只是一个过滤器,我用它来处理较少数量的字符串。当然,在我的代码中,我对返回的流做了一些处理,但我已经删除了这种处理,并且错误不断发生。

pclose 函数返回错误 256,使用 WIFEXITED 显示这不是命令的异常结束,使用 WSTATUS 显示错误 1,我不知道确切的含义。

显然,当命令返回空字符串或只有一行时,就会发生这种情况。

有人知道这个错误的含义吗?

提前致谢

最佳答案

man 1 grep

EXIT STATUS

The following exit values are returned:

0
    One or more lines were selected.

1
    No lines were selected.

>1
    An error occurred.

关于c - Solaris 中的 popen/pclose 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2085838/

相关文章:

c - 函数内部的指针操作

python - 使用 Python 进行密码散列在 Solaris 10 和 11 上产生奇怪的结果

c - 在 Solaris 中用字符串中的前导零填充有效,但在 RHEL 中无效

c - 给自己赋值 : optimization or extraneous?

谁能告诉我如何在sunsolaris系统中运行udp客户端服务器程序?

perl - 如何将 perl 库与我的跨平台脚​​本捆绑在一起?

linux - Unix 查找命令目录提示

c - NetBeans 中 C 文件的 ToggleComment 设置

c/fork/signals/关闭不同进程中打开的套接字的最佳实践

c - 我需要释放 GTK 中的弹出菜单吗?