示例#1
0
    def do_ls(self, dirname):
        if not dirname:
            self.do_echo("Missing file/dir name")
            return

        r = WebHdfs.Get(self.hdfsurl + dirname, "ls",
                        auth=self.auth, curl=self.curl)
        if r is not None:
            if r.get("FileStatuses"):               
                fs_list = r["FileStatuses"]["FileStatus"]
                self.do_echo("\n".join(gen_fileinfo(fs) for fs in fs_list))
            else:
                self.do_echo(r)
示例#2
0
    def do_ls(self, filename, filter_=lambda _:True):
        if len(filename) == 0:
            filename = self.cwd

        if filename[0] != "/":
            filename = "%s/%s" % (self.cwd, filename)

        r = self.Get(self.weburl + filename, "ls", self.user, curl=self.curl)

        if r is not None:
            if r.get("FileStatuses"):
                fs_list = r["FileStatuses"]["FileStatus"]
                self.do_echo("\n".join(filter(filter_, 
                                (gen_fileinfo(fs) for fs in fs_list))))
            else:
                self.do_echo("File not found")