我正在使用 Python 2.7
我有这样的情况
for (root,dirs,files) in os.walk(dir_tree, topdown=True, followlinks=True):
for atom in files:
# do something with files
for dir in dirs:
# do something with dirs
我正在目录树上执行os.walk
。这棵树有一些链接。其中一些链接指向目录树中的其他位置。有些链接没有。 我希望os.walk仅遵循指向目录树中其他位置的链接
例如:
A/
temp/
collateral_file_1
B/
link1 -> Somewhere outside A
link2 -> A/temp/
C/
file_1
在上述情况下,dir_tree
为A /。在A上执行os.walk
时,我想探索link2
,因为它是A中另一个位置的链接,但不是link1
的链接。
您可能想知道为什么?无论如何,在步行之后,将在非符号链接中探索link1
的内容。但是,这样做的原因是我正在检查通过配置文件提供的某些属性的某些文件模式。
例如:A/B/link1/
中的所有文件都应具有700
权限等。
有没有办法做到这一点?
我考虑过os.listdir
,但似乎应该有一种更简单的方法