删除r中的空文件夹
我有一个压缩文件列表,其中包含一个目录中的文本文件,该目录之间包含空文件夹。我想解压文件,解压后要删除空文件夹(如果存在)。在R中执行此操作需要帮助。您可以使用删除r中的空文件夹,r,unzip,R,Unzip,我有一个压缩文件列表,其中包含一个目录中的文本文件,该目录之间包含空文件夹。我想解压文件,解压后要删除空文件夹(如果存在)。在R中执行此操作需要帮助。您可以使用列表.files(include.dirs=TRUE)获取文件和目录列表,然后使用文件.info检查这是否是一个目录。由于file.info作为目录时,其大小显示为0,因此需要列出目录中的所有文件,并获取大小以检查其是否为空。然后,如果目录大小为0,则可以使用取消链接: lapply(list.files(include.dirs=TRU
列表.files(include.dirs=TRUE)
获取文件和目录列表,然后使用文件.info
检查这是否是一个目录。由于file.info
作为目录时,其大小显示为0,因此需要列出目录中的所有文件,并获取大小以检查其是否为空。然后,如果目录大小为0,则可以使用取消链接:
lapply(list.files(include.dirs=TRUE, full.names=TRUE), function(x) {
fi <- file.info(x)
if (fi$isdir) {
f <- list.files(x, all.files=TRUE, recursive=TRUE, full.names=TRUE)
sz <- sum(file.info(f)$size)
#as precaution, print to make sure before using unlink(x, TRUE)
if (sz==0L) print(x)
}
})
lappy(list.files(include.dirs=TRUE,full.names=TRUE),函数(x){
fi您可以使用list.files(include.dirs=TRUE)
要获取文件和目录的列表,然后使用file.info
检查这是否是一个目录。由于file.info
是一个目录时,其大小显示为0,因此需要列出目录中的所有文件,并获取大小以检查其是否为空。然后,如果大小为0,则可以使用取消链接删除目录
:
lapply(list.files(include.dirs=TRUE, full.names=TRUE), function(x) {
fi <- file.info(x)
if (fi$isdir) {
f <- list.files(x, all.files=TRUE, recursive=TRUE, full.names=TRUE)
sz <- sum(file.info(f)$size)
#as precaution, print to make sure before using unlink(x, TRUE)
if (sz==0L) print(x)
}
})
lappy(list.files(include.dirs=TRUE,full.names=TRUE),函数(x){
fi您可以使用函数icesTAF::remdir(path,recursive=T)
删除空文件夹
for i in 1:[your folders count]{
icesTAF::rmdir(list.files([your path containing folders], full.names = T)[i], recursive = T)
}
您可以使用函数icesTAF::remdir(path,recursive=T)
删除空文件夹
for i in 1:[your folders count]{
icesTAF::rmdir(list.files([your path containing folders], full.names = T)[i], recursive = T)
}
最好依靠文件的数量,而不是文件大小的总和。file.create('foo.txt')
例如,创建一个大小为0的文件。如果目标是删除其中没有文件的目录,那么为什么不这样做呢。只需替换sz最好依靠文件的数量,而不是文件大小的总和。file.create('foo.txt')
例如,创建一个大小为0的文件。如果目标是删除其中没有文件的目录,那么为什么不这样做呢。只需替换sz即可