【发布时间】:2012-01-24 19:28:52
【问题描述】:
你怎么知道popen()是成功/完成运行shell还是失败?
【问题讨论】:
-
“运行 shell”是什么意思?你检查过弹出的手册页吗?
-
Documentation... "成功完成后,popen() 应返回一个指向打开的流的指针,该流可用于读取或写入管道。否则,它应返回一个空指针并可能设置 errno 以指示错误"
-
检查manual page。
-
@user1104856,“成功”对您意味着什么?我可以看到三种情况:(1)程序完全成功运行,成功退出状态为
0,或(2)cat non_existent_file,或(3)更灾难性的失败,popen 甚至无法调用 fork 或 pipe .