关于模拟shell的程序?

潮水2013 2005-04-18 09:41:45
各位高手,请帮忙。
我在做一个模拟shell的ls命令时,怎么结果时执行ls两次的?
while(1)
{
if(pid=fork()<0)
printf("fork error");
else if(pid==0)
{
execlp("ls",arg[0],arg[1],(char *)0);
exit(0);
}
if(pid>0)
{
waitpid(pid,&status,0);
exit(0);
}
}

...全文
160 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
leeyiqun 2005-06-13
  • 打赏
  • 举报
回复
if(pid=fork()<0) 改为 if((pid=fork())<0)
或者把 pid=fork() 提到上面去。
踏岸寻柳 2005-06-13
  • 打赏
  • 举报
回复
>> if(pid=fork()<0)
<< if( (pid=fork())<0 )
sharkhuang 2005-05-02
  • 打赏
  • 举报
回复
(pid=fork())<0
hoyt 2005-04-19
  • 打赏
  • 举报
回复
if(pid=fork()<0) ?

欢迎访问我的个人网站 www.linuxc.net

18,773

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧