如何在自己写的 Linux C 程序中以一种优雅的方式调用一些命令?

最近准备使用C语言写一个程序,但是需要用到一些已经存在的命令行工具去实现一部分的功能,例如ifconfig等,但是,不太想用fork之后用execv去实现,这样看上去跟shell脚本好像没有什么不同。特地在这里请教大家:
如何在自己写的程序中以一种优雅的方式调用一些命令?
例如,能不能利用这些工具的源码去进行封装,不过我不会……
在此先谢谢大家了~
慕运维8079593
浏览 400回答 2
2回答

阿晨1998

用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

任何调用命令都是对fork之后exec*的封装,包括shell脚本。于是,你需要的是一个优雅的封装,但是你又不告诉我你用什么写这个程序。于是,我也不会答。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript