最佳答案
经过一些研究,我发现了以下作品:
unlink("mydir")
你必须使用 recursive
选项,如果你想递归删除:
unlink("mydir", recursive=TRUE)
但是,我注意到,当 mydir
包含子目录时,没有 recursive
选项的 unlink("mydir")
本身不会产生任何输出: 它不会删除 dir,但不会显示任何警告。什么都没有:
> list.dirs()
[1] "." "./r"
> dir.create("test")
> dir.create("test/test2")
> list.dirs()
[1] "." "./r" "./test" "./test/test2"
> unlink("test") ######### here I would expect a warning #########
> list.dirs()
[1] "." "./r" "./test" "./test/test2"
> unlink("test", recursive=TRUE)
> list.dirs()
[1] "." "./r"
有没有办法获得任何类型的“通知”,就像您在 UNIX 系统中获得的那样?
$ rmdir test
rmdir: failed to remove «test»: Directory not empty
我使用的是 R 版本3.1.2(2014-10-31)。我试过使用 options(warn=1)
等,但没有运气。