Capturer la sortie du système avec popen
Question :
Comment capturer efficacement le réel- sortie temporelle d'une commande système invoquée à l'aide de system(), telle que system("ls"), pour un traitement ultérieur en C/C ?
Réponse :
La fonction popen fournit une méthode efficace pour capturer la sortie des commandes système. Sa syntaxe est :
#include <stdio.h> FILE *popen(const char *command, const char *type); int pclose(FILE *stream);
Processus :
FILE *stream = popen(command, "r");
char buffer[1024]; while (fgets(buffer, sizeof(buffer), stream) != NULL) { // Process each line of output }
pclose(stream);
Exemple :
#include <stdio.h> int main() { FILE *stream = popen("ls", "r"); if (stream != NULL) { char buffer[1024]; while (fgets(buffer, sizeof(buffer), stream) != NULL) { printf("%s", buffer); } pclose(stream); } return 0; }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!