Как напечатать вывод `execvp` в терминале? - PullRequest
0 голосов
/ 27 апреля 2020

Я читаю файл построчно и надеюсь выполнить эти строки, используя execvp. Однако, когда я использую следующие коды, он ничего не распечатывает. (Коды успешно компилируются и запускаются, но на терминале нет вывода.) Как я могу напечатать вывод execvp на терминале?

//open file and read line by line
FILE * fp;
char * line = NULL;
size_t len = 0;
ssize_t read;

//open file (read only)
fp = fopen(cd, "r");

//exit if fail to open file
if (fp == NULL)
{
    exit(EXIT_FAILURE);
}

//read line by line
while ((read = getline(&line, &len, fp)) != -1) 
{
  //execute the line
  char * cmd[] = {line, NULL};
  execvp(cmd[0], cmd);
}
...