测试目录是否为空的最快方法是什么?
当然我可以检查长度
list.files(path, all.files = TRUE, include.dirs = TRUE, no.. = TRUE)
但这需要枚举我宁愿避免的目录的全部内容.
编辑:我正在寻找便携式解决方案.
编辑^ 2:一个巨大的目录的一些时间(在一个最初为空的目录中运行它,它将创建100000个空文件):
system.time(file.create(as.character(0:99999))) # user system elapsed # 0.720 12.223 14.948 system.time(length(dir())) # user system elapsed # 2.419 0.600 3.167 system.time(system("ls | head -n 1")) # 0 # user system elapsed # 0.788 0.495 1.312 system.time(system("ls -f | head -n 3")) # . # .. # 99064 # user system elapsed # 0.002 0.015 0.019
该-f
交换机是至关重要的ls
,这将避免将要发生,否则排序.