使用C ++在linux中复制文件的有效方法?

时间:2017-11-14 15:30:17

标签: c++

如何使用C ++高效地在linux中复制文件? 是否有任何系统调用/标准库允许文件复制而不进行循环?

1 个答案:

答案 0 :(得分:-1)

假设argv [1]是文件名源,而argv [2]是文件名dest:

#include <sys/types.h>
#include <sys/wait.h>
#include <stdlib.h>
#include <unistd.h>

int wid;
if(fork() == 0) {
    execve("/bin/cp", &argv[1], NULL);
    exit(-1);
}
wait(&wid);

这样做是分叉程序并在子程序中执行cp二进制文件 有关所用功能的更多信息:

man 2 fork
man 2 execve
man 2 wait