我想计算 R 中目录的大小。我尝试使用 list.info
函数,不幸的是,它遵循符号链接(symbolic link),所以我的结果有偏差:
# return wrong size, with duplicate counts for symlinks
sum(file.info(list.files(path = '/my/directory/', recursive = T, full.names = T))$size)
如何计算目录的文件大小,以便它给出与 Linux 相同的结果,例如与
du -s
例如?谢谢
最佳答案
健康的解决方案,对于检查包装尺寸可能非常有用。
dir_size <- function(path, recursive = TRUE) {
stopifnot(is.character(path))
files <- list.files(path, full.names = T, recursive = recursive)
vect_size <- sapply(files, function(x) file.size(x))
size_files <- sum(vect_size)
size_files
}
cat(dir_size(find.package("Rcpp"))/10**6, "MB")
#> 14.81649 MB
由 reprex package 创建于 2021-06-26| (v2.0.0)
关于r - 计算R中目录的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39753172/