取消
顯示的結果
而不是尋找
你的意思是:

列出所有文件在Azure數據湖Gen2容器

AmitSukralia
新的因素

我試圖找到一種方法來列出所有文件在Azure數據湖Gen2容器。我有安裝存儲賬戶,可以看到一個文件夾中的文件列表(一個容器可以有多個級別的文件夾層次結構)如果我知道確切的文件的路徑。但是我想要列出所有文件夾和子文件夾下的所有文件在一個給定的容器。dbutils.fs.lsdoesn't have any recursive list function nor does it support any wildcards in the file path. How can I achieve this?

5回複5

拉長的
新的貢獻者二世

使用REST API ?

Powershell的例子:http://dreich.net/using-powershell-to-list-azure-datalake-gen2-contents

隻有認證就是訪問鍵。

ankitha
新的貢獻者二世

我寫了一個自定義函數獲得所有必需的文件。函數考慮反誹謗聯盟容器-根的樹,執行“ls”根,遞歸地執行“ls”兒童,並返回與葉節點(所需的文件)。

基本條件的遞歸函數將檢查如果當前節點的路徑以“/”結束。文檔結構中的所有葉節點沒有路徑“/”。

JithuBalan
新的貢獻者二世

您可以創建遞歸函數在python在磚。

是這樣的。

def filedetails(路徑):

列表= dbutils.fs.ls(路徑)

全球num

我的列表:

如果(我[1][1]= = " / "):

num + = 1

lenfiles =dbutils.fs.ls(我[0])

modifiedlist.append((我[0],[1],[2],len (lenfiles)))

filedetails(我[0])

StefanSchenk
新的貢獻者二世

這裏有一個可能幫助:

def deep_ls(路徑:str):“”“遞歸地列出所有文件基本路徑”。”“x在dbutils.fs.ls(路徑):如果x。路徑[1]不是‘/’:收益率x:在deep_ls y (x.path):收益率y

用法:

https://gist.github.com/Menziess/bfcbea6a309e0990e8c296ce23125059

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map