我有几个文件夹,每个文件夹都有15,000到40,000张照片。我想将它们拆分为子文件夹 - 每个子文件夹中包含2,000个文件。
有什么快速的方法可以在进行中创建需要的每个文件夹并移动所有文件吗?
目前我只能找到如何将一个文件夹中的前x个项目移动到预先存在的目录中。为了在具有20,000个项目的文件夹上使用它...我需要手动创建10个文件夹,并运行该命令10次。
ls -1 | sort -n | head -2000| xargs -i mv "{}" /folder/
我尝试使用for循环,但是在使用mkdir命令创建文件夹时遇到了问题。即使解决了这个问题,我仍然需要让程序只为每20个文件(新组的开头)创建一个文件夹。但它目前会为每个文件都创建一个新文件夹。
那么... 我应该如何将大量文件轻松地移动到每个文件夹中任意数量的文件中?
希望能获得任何有用的帮助!
for i in \
seq 1 10`; do mkdir -p "folder$i/irr"; find . -maxdepth 2 -type f | head -n 4000 | xargs -i mv "{}" "folder$i/irr"; done` - cglfind . -maxdepth 1 -type f | head -n $dir_size |xargs -J {} mv {} "$dir_name$i"
- CharlesC