Мне нужно что-то напечатать в моем окне, когда скрипт " check.sh " ничего не возвращает, означает проверку, когда не возвращен вывод из скрипта.
check.sh ничего не содержит в нем. Это просто пустой sh-файл, который ничего не возвращает при выполнении. Я тестирую с пустым файлом sh (я не могу показать вам точный сценарий, поэтому).
То, что я хочу напечатать, - это какое-то сообщение типа «настроить что-то» через C, когда check.sh ничего не возвращает.
Я проверил строку буфера (проверьте в модуле ниже) с помощью "\ n", "\ r", "\ 0", NULL .. Я не знаю, что происходит, когда скрипт ничего не возвращает
Я буду вызывать модуль как execute_command ("sh check.sh")
Вот мой модуль
char *execute_command(char *command)
{
FILE *fpipe;
char line[1024]="";
//char *line = (char*)malloc(1024*sizeof(char));
int i =0;
if ( !(fpipe = (FILE*)popen(command,"r")) )
{ // If fpipe is NULL
perror("Problems with pipe");
exit(1);
}
while ( fgets( line, sizeof line, fpipe))
{
// printf("%s", line);
}
while(line[i]!='\0')
{
if(line[i]==' ')
{
line[i]=',';
}
i++;
}
pclose(fpipe);
printf("%s",line); // This is where i want to know what the buffer has when the script returns nothing
return(line);
}