你经常可以看到阿里云有个最高限制的数值为65535,可最近缙哥哥接到工单,某服务器托管(Linux系统安装宝塔)用户说自己的站点某个文件目录下超过了32000个文件夹,请求协助删除空文件夹,这是怎么回事呢?
Linux同目录能放多少个文件
一般来说,在Linux同一个路径下,一级子目录的个数限制为31998,如果你的应用生成的目录可能会超过这个数,那要注意进行目录分级。
为什么是31998
为什么说31998个呢?这是因为mkdir创建一个目录时,目录下默认就会创建两个子目录的,一个是.目录(代表当前目录),另一个是..目录(代表上级目录)。这两个子目录是删除不掉的,“ rm . ” 会得到rm: cannot remove `.' or `..'
的提示。所以32000-2=31998。
使用rmdir命令
rmdir:删除一个空的目录。如果所给出的目录不为空,则报错。
-p --parents:删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除;
--ignore-fail-on-non-empty:此选项使rmdir命令忽略由于删除非空目录时导致的错误信息;
-v -verboes:显示命令的详细执行过程;
--help:显示命令的帮助信息;
--version:显示命令的版本信息。
这里以宝塔面板、缙哥哥的博客、WordPress最常见的upload文件夹为例,那么要删除upload目录下所有的空文件夹,则执行以下命令:
cd /www/wwwroot/www.dujin.org/wp-content/uploads/
rmdir -v *
cd
为进入该目录,rmdir
为清除空文件夹,-v
显示命令的详细执行过程(可以看看删了哪些文件夹),*
表示当前目录所有文件夹,由于缙哥哥是删除当前目录下的空文件夹,所以就没有使用-p
指令,小伙伴们可以根据自己的需求,进行调整。
最后缙哥哥还想说一句:不建议在一个目录下放太多文件,会影响系统性能。
WordPress经验专栏 https://www.dujin.org/fenxiang/wp