如何解决dir.create 中的递归参数是什么意思?
我正在尝试使用 dir.create() 函数来创建嵌套文件夹“folder2”和“folder3”。
解决方案是:
dir.create(file.path("folder2","folder3"),recursive = TRUE)
编辑:对?dir.create
的解释是
递归 逻辑。是否应该创建路径的元素而不是最后一个?如果为 true,就像 Unix 命令 mkdir -p.
递归属性的目的是什么?
解决方法
从您的问题中的 'mkdir -p' 中提取,并解释 here:
如果您的 'folder2' 包含父文件夹,则需要先创建这些文件夹,否则 create 函数将无法在路径末尾创建最终文件(没有任何地方可以放置它,因为完整路径还不存在)。
假设“folder2”是“a/b/c/”。要创建文件夹“c”,您首先需要创建文件夹“b”。但是对于'b',你首先需要'a'。所以所有的父文件夹都需要在最终的子文件夹(或文件)之前创建。
“递归”是指“一次又一次地逐步重复”。 [先是'a',然后是'b',最后是'c']
,假设您的工作目录中有一个 Temp
文件夹。如果您想在 Temp
中的文件夹内创建文件夹。
dir.create('Temp/A/B/')
这将失败,因为文件夹 A
不存在。然而,
dir.create('Temp/A/B/',recursive = TRUE)
将工作并在文件夹 B
中创建一个文件夹 A
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。