// $Id: popen1.c,v 1.1 2004-12-16 08:48:48+09 kaiya Exp kaiya $ #include main(int argc, char* argv[]){ FILE* fp; FILE* ofp; char buf[100]; if((fp=popen("/bin/ps -ef", "r"))==NULL) exit(1); if((ofp=popen("/bin/cat -n", "w"))==NULL) exit(2); while(fgets(buf, 100, fp)!=NULL){ int pid; char name[100]; if(sscanf(buf, "%s %d", name, &pid)==2){ fprintf(ofp, "%d %s\n", pid, name); } } fclose(ofp); }