代码拉取完成,页面将自动刷新
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <sys/wait.h>
#include <unistd.h>
#define NUM 128
#define CMD 64
int main()
{
char conmmand[NUM];
for(;;)
{
char *argv[CMD];
//---------1-----------------
conmmand[0] = 0;//
printf("[zjy@myshell_-centos c]# ");
fflush(stdout);
//---------2-----------------
fgets(conmmand,NUM,stdin);
conmmand[strlen(conmmand)-1]='\0';
//---------3-----------------
const char*sep=" ";
argv[0]=strtok(conmmand,sep);
int i=1;
while(argv[i]=strtok(NULL,sep))
++i;
if(fork()==0)
{
printf("子进程替换\n");
execvp(argv[0],argv);
printf("子进程替换失败\n");
exit(-1);
}
printf("父进程开始等待\n");
waitpid(-1,NULL,0);
printf("父进程结束等待\n");
for(i=0;argv[i];++i)
{
printf("argv[%d]:%s\n",i,argv[i]);
}
// execl()
//printf("echo:%s",conmmand);
}
return 0;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。