Я пытаюсь написать оболочку на языке Си.Я пытаюсь реализовать команду выхода, но у меня возникают проблемы с получением оболочки для выполнения команд перед выходом.
Пользователь может ввести:
> quit
> quit; cat file
> cat file; quit
Оболочке необходимо выполнить файл catКоманда в обеих строках перед выходом.
Это то, что у меня есть в данный момент, но оно не завершает команды перед выходом.
if(strstr(argument[0], "exit"))
{
if(strcmp(argument[0],"exit")==0)
{
exit(0);
}
int i=0;
while(argument[i] != '\0')
{
strcpy(&command[i], argument[i]);
if(strcmp(command, "exit")==0){i++;}
printf("Argument[i] = %s \n", command);
execvp(command, argument);
i++;
}
exit(0);
}