// Fixed Format

 

#include <stdio.h>
extern char *environ[];
main(int argc, char *argv[])
{ int child,c;
   char *argvn[5];
   argvn[0]="/bin/ls";argvn[1]="-l";argvn[2]=NULL;
   child=fork();
   if(child==0)
       execve(argvn[0],argvn,environ);
else wait(0);    
}

 

 

// Simple Shell, input from the command line with the program name

 

#include <stdio.h>
extern char *environ[];
main(int argc, char *argv[])
{ int child,c;
  argv[3]=NULL;
 child=fork();
   if(child==0)
       execve(argv[1],&argv[1],environ);
 else wait(0);   
}
 

==================================================================================

 

// Simple shell, input within the shell until ‘x’ to quit

 

#include <stdio.h>
extern char *environ[];
main(int argc, char *argv[])
{ int child,c;char p1[10],p2[10];
   char *argvn[5];

while(1)

  {   printf("CS433->");
      scanf("%s %s",p1,p2); 

      argvn[1]=p1;argvn[2]=p2;
      if(strcmp(p1,"x")==0) exit(0);
      argvn[3]=NULL;argv[3]=NULL;
      child=fork();
      if(child==0)
            execve(argvn[1],&argvn[1],environ);
      else wait(0);    
   }
}