Muchas gracias.
saludos.
Código
void ipContestan() { char lectura[800]; char ruta[] = "ficheroIpOK.txt"; FILE* ficheroIpOK; // Declaramos el nuevo fichero ficheroIpOK = fopen(ruta, "r"); // Abrimos el fichero en el modo de añadir if (ficheroIpOK == NULL) { printf("Error al abrir el fichero ficheroIpOK"); } else { printf("*********************************Lectura de fichero %s********************************\n",ruta); while (fgets(lectura, 100, ficheroIpOK)!=NULL) { printf("%s", lectura); } } fclose(ficheroIpOK); } int pingMediaDNS(char* dns, const char* rutaFichero) { char command[100]; char dnsRuta[100]; char lectura[100]; char mediaMs[100]; bool pingOK = false; int length, newlength, j = 0, media = -1; /* Construcción del comando ping para los dns introducidos*/ strcpy(command, "ping -n 10 "); // Copiamos ping -n 10 a command <<El parametro de -n es para el número de pings totales>> strcat(command, dns); // concatenamos ping -n 10 + dns strcat(command, " > "); // concatenamos > a ping -n 10 + dns strcpy(dnsRuta, rutaFichero); // Copiamos la ruta del fichero dns1.txt o dns2,txt a dnsruta strcat(command, dnsRuta); // concatenamos dnsruta a ping -n 10 + dns + > + dnsruta system(command); // Ejecutamos el comando ya construido FILE* ficheroDns; ficheroDns = fopen(rutaFichero, "r"); if (ficheroDns == NULL) { printf("El fichero %s no existe o no se puede abrir", rutaFichero); } else { while (fscanf(ficheroDns, "%s", lectura) != EOF) { if (strstr(lectura, "Media") != NULL) { pingOK = true; } } length = strlen(lectura); newlength = length - 2; for (int i = 0; i < newlength; i++) { mediaMs[j++] = lectura[i]; } mediaMs[j] = '\0'; media = -1; media = atoi(mediaMs); if (pingOK) { printf("\nPing correcto %s \n", dns); } else { printf("\nPing incorrecto %s \n", dns); } } return(media); }