【发布时间】:2016-06-29 16:48:51
【问题描述】:
我想知道是否有办法知道 mkdir 可以创建的目录名的最大大小。我凭经验发现我的版本 8.21 在 Ubuntu 14.04 上的限制是 1024。
$ mkdir $(python -c "print('x' * 1024)")
$ echo $?
0
$ mkdir $(python -c "print('x' * 1025)")
mkdir: cannot create directory ‘... (x repeated 1025 times) ...’: File name too long
根据 pathconf(使用来自 pjd(一个 POSIX 文件系统测试套件)的工具):
$ # pathconf("/", NAME_MAX)
$ ./pjdfstest pathconf / _PC_NAME_MAX
255
$ # pathconf("/", PATH_MAX)
$ ./pjdfstest pathconf / _PC_PATH_MAX
4096
知道为什么这些值不同吗?
编辑 1:从命令行中删除用户名。
【问题讨论】:
-
我目前正在使用的文件系统为 NAME_MAX 返回 0,所以 pjd 就这样 :boom:.