最近准备使用C语言写一个程序,但是需要用到一些已经存在的命令行工具去实现一部分的功能,例如ifconfig等,但是,不太想用fork之后用execv去实现,这样看上去跟shell脚本好像没有什么不同。特地在这里请教大家:如何在自己写的程序中以一种优雅的方式调用一些命令?例如,能不能利用这些工具的源码去进行封装,不过我不会……在此先谢谢大家了~
2 回答
阿晨1998
TA贡献2037条经验 获得超6个赞
用system()或popen(),不知道算不算优雅,这个还是留给你自己来评判吧。#include #include #defineSIZE100intmain(){system("ifconfigeth0");FILE*f=popen("ifconfigeth0","r");if(f){charbuf[SIZE];while(fread(buf,SIZE,1,f)){printf("%s",buf);}pclose(f);}return0;}
牧羊人nacy
TA贡献1862条经验 获得超7个赞
任何调用命令都是对fork之后exec*的封装,包括shell脚本。于是,你需要的是一个优雅的封装,但是你又不告诉我你用什么写这个程序。于是,我也不会答。
添加回答
举报
0/150
提交
取消