可以嵌套多少个目录?


13

我很好奇,可以嵌套多少个文件夹,为什么?有限制吗?

我的意思是嵌套是指文件夹处于以下结构中:

folder
 |_ folder
     |_ folder
         |_ folder
             |_ ...

不是这样的:

folder
 |_ folder
 |_ folder
 |_ folder
 |_ ...

如果有限制,是由操作系统设置还是由文件系统设置?

Answers:


20

限制将是inode您分区上的s 数,因为目录(如常规文件)每个都有一个索引节点。

没有什么会阻止您在另一个目录内的目录内创建目录,依此类推,直到用完inodes 为止。

请注意,shell的命令行确实具有最大长度,这可能会导致路径过长的问题,但是仍然有可能cd逐步实现目标文件的目的。


2
实际上,通过实验可以mkdir -p做到,并且可以超过MAX_PATH。此类文件无法通过其规范路径打开,但可以毫无问题地创建它们。
DepressedDaniel

1
实际上,这很合逻辑。相对路径从当前工作目录inode开始。索引节点不是按层次排列的:在名称层次上链接较深的目录与文件系统的根目录在这方面没有区别。
JohanMyréen'16

3
@JuliePelletier POSIX(和Linux)API定义了一个最大的PATH_MAX(在Linux上是4096),比命令行的最大长度短得多。当我们挑剔的时候:最大的命令行实际上并不是shell的限制。该限制是由参数向量长度施加到execve系统调用的,因此适用于任何程序。
约翰·迈伦(JohanMyréen)

1
@JohanMyréen:这些是很好的观察,但我的观点是,无论它的深度如何,仍然可以相对访问。
Julie Pelletier

2
@Arin尝试df -i
JohanMyréen'16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.