我想在GCC中每行显示一个目录的所有子文件夹和文件的完整路径。现有的问题没有提供列出完整路径的解决方案。
例如, 如果我有一个目录/root/abc ,其中包含两个文件(a.txt 和 b.txt)和一个目录 xyz,那么代码必须显示以下内容
/root/abc
/root/abc/a.txt
/root/abc/b.txt
/root/abc/xyz
最佳答案
找到答案了!只是对 this question 给出的答案做了一个小小的更改只需在 listdir 函数中打印“name”属性以及“entry->d_name”即可。
printf("%*s[%s%s]\n", level*2, "", name, entry->d_name);
注意:确保您提供给函数的输入没有尾随“/”,因为在这种情况下,您将在完整路径中得到“//”而不是“/”。
例如,如果输入为/root/abc/,则输出将为
/root/abc//a.txt
/root/abc//b.txt
/root/abc//xyz
关于c - 在 GCC 中每行列出一个目录内所有子文件夹和文件的完整路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35883171/