在Ubuntu中,要实现递归读取目录(包括子目录)中的所有文件和文件夹,可以使用find
命令或者编写一个简单的Python脚本来实现。下面是两种方法的示例:
方法1:使用find
命令
打开终端,然后输入以下命令:
find /path/to/directory -type f
将/path/to/directory
替换为你要递归读取的目录路径。这个命令会列出该目录及其子目录中的所有文件。
如果你还想查看目录结构,可以使用-exec
选项与ls
命令结合:
find /path/to/directory -type d -exec ls -l {} \;
这将显示每个子目录的详细信息。
方法2:使用Python脚本
创建一个名为recursive_readdir.py
的Python脚本,并添加以下代码:
import os
def recursive_readdir(path):
for root, dirs, files in os.walk(path):
for file in files:
print(os.path.join(root, file))
for directory in dirs:
print(os.path.join(root, directory))
if __name__ == "__main__":
path = "/path/to/directory"
recursive_readdir(path)
将/path/to/directory
替换为你要递归读取的目录路径。保存脚本后,在终端中运行以下命令:
python3 recursive_readdir.py
这将输出指定目录及其子目录中的所有文件和文件夹。