def update(self): '''交互式更新未纳入管理的文件''' startdir = path('~').expanduser() oldpwd = os.getcwd() if self.data is None: self.data = {} try: self._update(startdir, self.data) except KeyboardInterrupt: print('已中止。') finally: os.chdir(oldpwd)
def filelist(self, include=Normal): filelist = [] def parsedir(d, p): for k, v in d.items(): pp = p + k if not pp.exists(): if v != Ignore: print('WARNING: %s not found' % pp, file=sys.stderr) continue if isinstance(v, dict): parsedir(v, pp) else: if v == include: filelist.append(pp.value) parsedir(self.data, path('~').expanduser()) return filelist