楼主,你好!
在BLP上正好见过这个程序,编译好执行的时候,传递的参数为要打印的目录
代码如下,纯C写的,希望对你有帮助
#include <unistdh>
#include <stdioh>
#include <direnth>
#include <stringh>
#include <sys/stath>
#include <stdlibh>
void printdir(char dir, int depth)
{
DIR dp;
struct dirent entry;
struct stat statbuf;
if( (dp = opendir(dir)) == NULL )
{
fprintf(stderr, "cannot open directory: %s\n", dir);
return;
}
chdir(dir);
while( (entry = readdir(dp)) != NULL)
{
lstat(entry->d_name, &statbuf);
if( S_ISDIR(statbufst_mode) )
{
if( strcmp("", entry->d_name) == 0 || strcmp("", entry->d_name) == 0 )
continue;
printf("%s%s/\n", depth, "", entry->d_name);
printdir(entry->d_name, depth+4);
}
else
printf("%s%s\n", depth, "", entry->d_name);
}
chdir("");
closedir(dp);
}
int main(int argc, char argv[])
{
char topdir = "";
if( argc >= 2 )
topdir=argv[1];
printf("Directory scan of %s\n", topdir);
printdir(topdir, 0);
printf("Done\n");
exit(0);
}
以上就是关于Linux 编程问题之递归取目录下所有文件名与路径全部的内容,包括:Linux 编程问题之递归取目录下所有文件名与路径、、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)