根据文件名前缀拆分目录

根据文件名前缀拆分目录

我有一个非常大的目录,里面可能有数百万个小文件。在该目录上运行 ls 需要很长时间。

有没有一个简单的脚本可以运行,根据文件名的前缀将目录拆分成较小的目录。我的目标是最终得到类似于Debian 档案库的池目录好像。

答案1

这太简单了吗?只需根据文件首字符将每个文件推送到单字母目录中即可。

#!/bin/sh


for i in `/bin/ls | xargs`
do
    dir=`echo $i | cut -c 1 -`
    mkdir -p $dir
    mv $i $dir
done

您没有获得“lib”目录,但您可以为其他前缀制定特殊规则。

相关内容