最近准备使用C语言写一个程序,但是需要用到一些已经存在的命令行工具去实现一部分的功能,例如ifconfig等,但是,不太想用fork之后用execv去实现,这样看上去跟shell脚本好像没有什么不同。特地在这里请教大家:如何在自己写的程序中以一种优雅的方式调用一些命令?例如,能不能利用这些工具的源码去进行封装,不过我不会……在此先谢谢大家了~
2 回答
冉冉说
TA贡献1877条经验 获得超1个赞
用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;}
SMILET
TA贡献1796条经验 获得超4个赞
任何调用命令都是对fork之后exec*的封装,包括shell脚本。于是,你需要的是一个优雅的封装,但是你又不告诉我你用什么写这个程序。于是,我也不会答。
添加回答
举报
0/150
提交
取消