【发布时间】:2020-10-11 04:06:54
【问题描述】:
我正在用 c 编写一个 shell。我必须实现的构建之一是“回声”,我想知道如何获得 $ 的价值?如果我的命令是 'ls filename ;回声 $?'。在这种情况下,我必须使用fork创建一个新进程并使用execv在系统中运行二进制ls,执行ls之后,我如何知道ls的退出状态?
【问题讨论】:
-
这将由各种
wait函数返回,您必须调用这些函数才能确定进程是否已退出 -
哦,这听起来像是一堂课。我发现非常好的一本书是《UNIX 环境中的高级编程》。我不知道这是否仍然是一本教科书,或者你是否被分配了类似的东西。但是,如果您希望从事大量涉及 UNIX 的工作,您可能需要这本书。
-
是的,我通过这个项目来学习。我的问题解决了。感谢大家的回答和赞的书推荐。