用 R 自动整理不同类型的文件
楚新元 / 2021-10-15
这里我们先分别创建 3 个 Excel 和 Word 文档作为示例数据,然后实现两类型的文件分别放在 xlsx 和 docx 文件夹内。
# data 文件夹下创建示例文件
dir.create("data")
x = outer(1:3, c("xlsx", "docx"), FUN = paste, sep = ".")
file.create(paste0("./data/", x))
# 编写整理路径下文件的函数
tidy_file = \(path) {
# 获取文件后缀
path %>%
list.files() %>%
tools::file_ext() %>%
unique() -> file_ext
# 根据后缀建立文件夹
file_ext %>%
paste0("./data/", .) %>%
fs::dir_create()
# 根据文件类型移动文件
for (i in file_ext) (
path %>%
fs::dir_ls(glob = paste0("*.", i)) %>%
fs::file_move(paste0(path, "/", i))
)
}
# 整理给定文件夹
tidy_file("./data")