gaurda che sono un sacco di file..e di codice...miposto il file con il main per rendere l'idea
Codice PHP:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <signal.h>
#include "smsh.h"
void fatal(char *s1, char *s2, int n);
//-------------------------------------------------------------------------------------------------------------
int main()
{
char *cmdline,*prompt,**arglist;
int result;
prompt = DFL_PROMPT;
setup();
while((cmdline = next_cmd(prompt,stdin)) != NULL)
{ //cmdline è una stringa che contiene tutta la linea di comando
if((arglist = splitline(cmdline)) != NULL)
{ //arglist è un array di puntatpri a stringhe con i comandi e i parametri
result = execute(arglist,0," "); //usa execvp per mandare in esecuzione il comando
free(arglist);
}
free(cmdline);
}
return 0;
}
//-------------------------------------------------------------------------------------------------------------
void setup()
/* scopo: inizializzazione della shell
* ritorna: nulla. chiama fatal() in caso di problemi
*/
{
signal(SIGINT,sgn_handler);
signal(SIGQUIT,SIG_IGN);
}