3 回答

TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超3個(gè)贊
正如您在此處給出的示例中所見(jiàn),您可以dbutils.fs.rm("/mnt/inbox/InvLog.txt", True)在單個(gè)文件方法中使用。
網(wǎng)頁(yè)上的示例為您提供了以下單個(gè)文件:
dbutils.fs.rm("/foobar/baz.txt")
刪除文件夾 foobar 下的文件是這樣完成的:
%fs rm -r foobar
在你的情況下使用:
%fs rm -r mnt/inbox
請(qǐng)記住 linux、Windows 和 OSX 系統(tǒng)之間的文件夾注釋差異。
更新:
您可以嘗試以下非優(yōu)雅的捷徑解決方案來(lái)規(guī)避您聲明的 java 異常:
import os
import ...snippet... # yours to fill in here what else you need to import.
files_processed = 0
files_path = [os.path.abspath(x) for x in os.listdir()]
print (files_path) # your filepath might need cleaning for it can be accepted. It prints here all found files.
for item in files_path:
if os.path.isfile(item) == True:
dbutils.fs.rm(item, True)
files_processed +=1
else:
print ('skipped folder: %s', item)
print ("job done", ' : ', file_processed)

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超7個(gè)贊
我發(fā)現(xiàn)命令
%fs rm -r /mnt/inbox/test
僅適用于文件夾。不是直接放在容器中的文件上,所以在上面的代碼中, 收件箱是容器,測(cè)試是文件夾。那么它的工作原理。文件需要在一個(gè)文件夾中。

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超5個(gè)贊
我發(fā)現(xiàn)的相同問(wèn)題。
%fs rm -r path
或者 dbutils.fs.rm('path', True)
檢查path
它是否指向“容器”而不是“文件夾”。我們無(wú)法從數(shù)據(jù)塊中刪除 azure blob 容器。
添加回答
舉報(bào)