我有一段代码我一直在做,现在看起来像这样:
def buildManifestFile(self):
manifestFile = self.createManifestFileForWriting(self.manifest_target)
symlinks = []
for subdir, dirs, files in os.walk(self.basedir, followlinks=True):
if self.isIncluded(self.includes,self.excludes,subdir[len(self.basedir):]) and not any(link in subdir for link in symlinks):
if not os.path.islink(subdir): ## symlinks should be listed as files, not followed.
manifestFile.write('%dir "' + subdir + '"\n')
else:
manifestFile.write('"' + subdir + '"\n')
symlinks.append(subdir)
continue
for fileName in files:
fileNameWithSubdir = '"' + subdir + "/" + fileName + '"\n'
if self.isIncluded(self.includes,self.excludes,fileNameWithSubdir):
manifestFile.write(fileNameWithSubdir)
self.closeManifestFile(manifestFile)
实际上,我想遍历一个目录,访问所有子目录、文件和符号链接,但我不想跟踪符号链接,因为它会在我的输出中产生大量冗余。实际上我只想把它们打印成文件。上面的代码似乎运行得很好,但困扰我的是,当我在一个有许多符号链接的目录上使用它时,它的复杂性增长得相当快。在
在手术室步行默认情况下是否列出符号链接,但不跟随符号链接。查看循环文件夹时剩下的内容手术室步行尾巴。在
相关问题 更多 >
编程相关推荐