1

我需要像: ls -r, mv, copy, delete,这样的操作rm -rf来从 C 程序中调用。什么是最好的方法?通过调用system()调用或自己编写这些功能来调用这些命令?

4

2 回答 2

0

我会重新编码它们,因为我有兴趣学习如何做到这一点。但这比通过system(3). 您还可以rename(2)根据需要使用和其他系统调用。

因此,如果您想快速完成,请使用system(3); 否则,玩得开心:)

编辑:

我的建议:首先使用system(3)or exec*(3)(这样您就可以从已经实现的功能中受益,例如-r,从您使用的二进制文件中受益),当您完成程序的其余部分时,您可以享受改进它的乐趣。

于 2013-03-06T13:35:57.157 回答
0

execv应该管用。

execv("ls", "-r", NULL);

它也应该适用于其他命令(虽然未经测试)

关联

于 2013-03-06T13:31:21.553 回答