自己实现cp指令简单来说需要以下几个步骤:
1、打开源文件
2、读取源文件的内容到并以字符串的形式存放到缓冲区
3、打开或者创建一个目标文件,这里需要注意的是,如果路径中已经存在目标文件,则需要清空目标文件里的内容。
4、将缓冲区里存放的内容写入到目标文件。
5.关闭源文件和目标文件
#include#include #include #include #include #include int main(int argc,char **argv) { int fdSrc; int fdDes; if(argc != 3){ printf("command error!n"); exit(-1); } fdSrc = open(argv[1],O_RDWR); char *readBuf = NULL; int size = lseek(fdSrc,0,SEEK_END); lseek(fdSrc,0,SEEK_SET); readBuf = (char *)malloc(sizeof(char)*size+4); int n_read = read(fdSrc,readBuf,size); fdDes = open(argv[2],O_RDWR|O_CREAT|O_TRUNC,0600); int n_write = write(fdDes,readBuf,n_read); close(fdSrc); close(fdDes); return 0; }



