我在远程服务器上运行以下命令
python -c 'import os, json; print json.dumps(os.listdir("."))'
这适用于列出当前目录中的文件/目录但是如何更改它以跟踪目录并列出包含的文件?
答案 0 :(得分:3)
Python,渴望取悦,为此提供标准库函数。 os.walk
包含递归列出子目录中文件的模式。
以下是如何json-ify此目录或所有子目录中的所有文件的列表。我使用两级list comprehension来连接文件列表:
import json
import os
print(json.dumps([file for root, dirs, files in os.walk('.') for file in files]))
答案 1 :(得分:1)
out_list = []
for (path, dirs, files) in os.walk("."):
for f in files:
out_list.append(os.path.join(path, f))
for d in dirs:
out_list.append(os.path.join(path, d))
print json.dumps(out_list)
这将包含输出中带有完整路径的目录和文件。