预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共31页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Project2:文件夹同步工具任务背景功能要求其他要求提高要求解题思路实现细节问题1:遍历得到目录下所有的文件ls-Rfind命令如何在程序中利用linux命令的结果输入输出重定向Linux的管道方法1:实现提示方法2:利用操作系统提供的APIopendir:打开目录readdir函数readdir函数(2)closedir:关闭目录编程提示问题2:如何确定文件是否更新过?Linux中文件时间如何获取文件信息lstat函数代码分析:遍历目录while((ent=readdir(pDir))!=NULL) { //得到读取文件的绝对路径名 snprintf(dir,512,"%s/%s",path,ent->d_name); //得到文件信息 lstat(dir,&statbuf); //判断是目录还是文件 if(S_ISDIR(statbuf.st_mode)) { //排除当前目录和上级目录 if(strcmp(".",ent->d_name)==0||strcmp("..",ent->d_name)==0) { continue; } //如果是子目录,递归调用函数本身,实现子目录中文件遍历 printf("%*s子目录:%s/\n",indent,"",ent->d_name); //递归调用,遍历子目录中文件 List(dir,indent+4); } else { printf("%*s文件:%s\n",indent,"",ent->d_name); } } closedir(pDir); } intmain(intargc,char*argv[]) { if(argc==2) { List(argv[1],2); } else { char*s="."; List(s,2); } return0; } 其他问题