popen执行完后,读取内容
#include <stdio.h>
#include <string.h>
int main(void)
{
FILE *fp = NULL;
char buf[10240] = {0};
fp = popen(“ls -al”,“r”);
if(fp == NULL){
return 0;
}
fread(buf, 10240, 1, fp);
printf("%s\n",buf);
pclose(fp);
return 0;
}
popen执行完后,仍然可以向管道继续传送命令,实现功能
#include <stdio.h>
#include <string.h>
int main(void)
{
FILE *fp = NULL;
char buf[10240] = {0};
fp = popen(“mysql -u root -p123456 my_db”,“w”);
if(fp == NULL){
return 0;
}
fprintf(fp,“delete from my_test_table;”);
fprintf(fp,"\q");
pclose(fp);
return 0;
}