Je dois imprimer quelque chose dans ma fenêtre lorsque le script "check.sh" ne renvoie rien, signifie validation quand aucune sortie du script n'est retournée.capture la sortie vide retournée par la ligne de commande et affiche un message si elle est vide
check.sh ne contient rien. C'est simplement un fichier sh vide qui ne retourne rien quand il est exécuté. Je teste avec un fichier sh vide (je ne peux pas vous montrer le script exact qui est pourquoi). Ce que je veux imprimer est un message comme "configurer quelque chose" à travers C quand check.sh ne retourne rien.
J'ai vérifié le tampon ligne (vérifiez dans le module ci-dessous) avec "\ n", "\ r", "\ 0", NULL .. Je ne sais pas ce qu'il prend quand le script ne retourne rien
Je vais appelle le module comme execute_command ("sh check.sh")
Voici mon module
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);
}
Veuillez améliorer la mise en forme de votre question. En particulier, indenter votre code mieux: comme c'est il est incompréhensible. Sinon, les gens (par exemple moi) ne vous aideront pas. –
S'il vous plaît laissez une note sur la solution, pourriez-vous le résoudre? – spikey