【文件属性】:
文件名称:目录树的遍历
文件大小:6KB
文件格式:C
更新时间:2017-01-07 12:42:50
UNIX 目录树 遍历
目的:
掌握与文件和目录树有关的系统调用和库函数。
要求:
1、编写程序myfind
命令语法:
myfind [-comp | -name …]
命令语义:
(1)myfind 的功能:
除了具有与程序4-7相同的功能外,还要输出在目录子树之下,文件长度不大于4096字节的常规文件,在所有允许访问的普通文件中所占的百分比。程序不允许打印出任何路径名。
(2)myfind -comp 的功能:
是常规文件的路径名(非目录名,但是其路径可以包含目录)。命令仅仅输出在目录子树之下,所有与文件内容一致的文件的绝对路径名。不允许输出任何其它的路径名,包括不可访问的路径名。
(3)myfind -name …的功能:
…是一个以空格分隔的文件名序列(不带路径)。命令输出在目录子树之下,所有与…序列中文件名相同的文件的绝对路径名。不允许输出不可访问的或无关的路径名。
和均既可以是绝对路径名,也可以是相对路径名。既可以是目录,也可以是文件,此时,目录为当前工作目录。
2、注意尽可能地提高程序的效率。注意避免因打开太多文件而产生的错误。
3、遍历目录树时,访问结点(目录项)的具体操作应当由遍历函数dopath携带的函数指针参数决定。这样程序的结构清晰,可扩充性好。