def ls(self, force_read=True, glob_list='*', openclose=True): if not glob_list: glob_list = '*' if force_read: self.START_OPERATION('ls') try: self.current_dir = pcardext.ls() finally: self.END_OPERATION('ls', openclose) self.current_dir = [(n.lower(), a, s) for (n, a, s) in self.current_dir] if glob_list == '*': return self.current_dir return [ fnmatch.filter(self.current_dir, x) for x in glob_list.strip().lower().split() ][0]
def __tree(self, __d=None): if __d is None: __d = {} pcardext.cd('/') for f in pcardext.ls(): # True, '*', False ): fname = f[0].lower() if self.callback is not None: self.callback() if fname not in ('.', '..'): if f[1] == 'd': self.cd(fname, False) __d[fname] = {} __d[fname] = self.__tree(__d[fname]) self.cdup(False) else: __d[fname] = f[2] return __d