Очень умный человек из StackOverflow помог мне скопировать файлы в каталог из Databricks здесь: копии файлов
Я использую тот же принцип для удаления файлов после их копирования, как показано в ссылке:
for i in range (0, len(files)):
file = files[i].name
if now in file:
dbutils.fs.rm(files[i].path,'/mnt/adls2/demo/target/' + file)
print ('copied ' + file)
else:
print ('not copied ' + file)
Однако я получаю сообщение об ошибке:
TypeError: '/ mnt / adls2 / demo / target /' имеет неправильный тип - ожидается класс bool.
Может кто-нибудь сообщить мне, как это исправить. Я думал, что будет просто удалить файл после его первоначального копирования с помощью команды dbutils.fs.rm
for i in range (0, len(files)): file = files[i].name if now in file: dbutils.fs.rm(files[i].path,'adl://xxxxxxxxxxxx.azuredatalakestore.net/Folder Structure/RAW/1stParty/LCMS/DE/stageone/') print ('removed ' + file) else: print ('not removed ' + file)
Проблема заключалась в том, что я пропустил открытые скобки. Итак, проблема не в ожидается неправильный тип класса bool, как указано выше, проблема заключается в недопустимой синтаксической ошибке вprint ('removed ' + file)
. Надеюсь, это поможет исправить. - person Carltonp   schedule 08.01.2019