Запуск программ execvp jobs, fg, bg
Есть программа которая работает как командная строка под linux, в ней запускаются программы с помощью execvp и всё работает, но есть проблемки с работой фоновых запусков и я не могу обращаться к командам jobs, fg, bg. Вот вывод, который показывает что обычные команды работают, а jobs, fg, bg - нет:
>cat modules/shell_lib.h
#ifndef SHELL_LIB_H_SENTRY
#define SHELL_LIB_H_SENTRY 1
typedef struct command_part{
char *word;
struct command_part *next;
} copa;
void free_copa(copa *t);
void fprintf_copa(copa *t);
void create_word_node(char *buf, int length, copa **first, copa **last);
void buf_clear(char *buf, int length);
char **create_cmd_line_from_copa(copa *t);
int count_of_copa_element(copa *t);
int fork_and_execvp_cmdline(char* const *cmdline);
void execute_cd(copa *t);
int background_process(char **cmdline);
int cmdline_ampersand(char *cmd);
#endif
>ls
headers main main.c main.o modules object_files source
>jobs
jobs: No such file or directory
>fg
fg: No such file or directory
>bg
bg: No such file or directory
>
Там где '>' - это приглашение интерпретатора к вводу команд ну и их ввод соответственно после знака. Вне программы эти команды работают нормально.