使用spark scala删除目录中不需要的文件



我想从特定目录中删除自动生成的.crc文件。下面是我的代码:

val existingSparkSession = SparkSession.builder().getOrCreate()
val fs = FileSystem.get(existingSparkSession.sparkContext.hadoopConfiguration)
fs.delete(new Path(s"./src/path/*.crc"), true)

但是这并没有像预期的那样删除任何.crc文件。是否有一种方法来删除这些文件使用scala和spark?

由于Path中有通配符,fs.delete不能正常工作。一个可能的解决方案可以像下面这样尝试hadoopglobStatus:

import org.apache.hadoop.fs.FileStatus
val allStatus = fs.globStatus(new Path("/src/path/*.crc"))
for (currentStatus <- allStatus ) {
fs.delete(currentStatus.getPath, true);
}