# Which directory?
mydir <- "C:/Test"
# What phrase do you want contained in
# the files to be deleted?
deletephrase <- "deleteme"
# Look at directory
dir(mydir)
# Figure out which files should be deleted
id <- grep(deletephrase, dir(mydir))
# Get the full path of the files to be deleted
todelete <- dir(mydir, full.names = TRUE)[id]
# BALEETED
unlink(todelete)
dir_to_clean <- tempdir() #or wherever
#create some junk to test it with
file.create(file.path(
dir_to_clean,
paste("test", 1:5, "txt", sep = ".")
))
#Now remove them (no need for messing about with do.call)
file.remove(dir(
dir_to_clean,
pattern = "^test\\.[0-9]\\.txt$",
full.names = TRUE
))
6条答案
按热度按时间nom7f22z1#
删除文件夹中的所有内容,但保持文件夹为空
删除文件夹内的所有内容,同时也删除文件夹
使用
force = TRUE
,覆盖任何只读/隐藏/等。问题.rn0zuynd2#
使用dir和grep的组合并不太糟糕。这可能会变成一个函数,也告诉你哪些文件要删除,并给你一个机会,如果它不是你所期望的中止。
vvppvyoh3#
我很喜欢
here::here
在文件夹中查找方法(特别是当我在Rmarkdown笔记本的内联评估和编织版本之间切换时)。另一种解决方案:h6my8fg24#
也许您只是在寻找
file.remove
和list.files
的组合?也许是这样的:我猜你可以使用
grep
或grepl
过滤文件列表,只找到那些名称与特定模式匹配的文件,不是吗?1yjd4xko5#
对于已知路径中的所有文件,您可以:
vnjpjtjt6#
您也可以使用
unlink
作为file.remove
的替代方案。