1 Star 0 Fork 1

王其/托管

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
copy.c 1.69 KB
一键复制 编辑 原始数据 按行查看 历史
王其 提交于 2023-09-26 19:09 +08:00 . add copy.c.
int copy(char *read_dir_path, char *write_dir_path)
{
DIR * p_dir;
struct dirent * p_dirent;
char read_buf[256];
char write_buf[256];
sprintf(read_buf,"%s/", read_dir_path);
sprintf(write_buf,"%s/",write_dir_path);
strcat(read_dir_path,"/");
if( Is_dir(read_buf) )
{
//mkdir
if(mkdir(write_buf, 0755) < 0)
{
printf("mkdir fall:%s\n", strerror(errno));
return -1;
}
//opendir and readdir
if((p_dir = opendir(read_buf)) == NULL )
{
printf("Usage:cp -r <src_dir> <dat_dir> error:%s\n",strerror(errno));
return -1;
}
while((p_dirent=readdir(p_dir)) != NULL)
{
char read_buffer[256];
char write_buffer[256];
sprintf(read_buffer,"%s%s", read_buf, p_dirent->d_name);
sprintf(write_buffer,"%s%s", write_buf, p_dirent->d_name);
printf("%s\n%s\n",read_buffer,write_buffer);
//it is a directory
if( Is_dir(read_buffer) && 0 != strcmp(p_dirent->d_name, ".") && 0 != strcmp(p_dirent->d_name, "..") )
{
copy_r(read_buffer, write_buffer);
}
else if(0 != strcmp(p_dirent->d_name, ".") && 0 != strcmp(p_dirent->d_name, ".."))
{
//copy file
if( file_copy_line(read_buffer, write_buffer) < 0 )
return 0;
}
}
closedir(p_dir);
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/wang-qi3206/trusteeship.git
git@gitee.com:wang-qi3206/trusteeship.git
wang-qi3206
trusteeship
托管
master

搜索帮助