尝试将文件放入单独的文件夹中(每个文件 1 个文件夹)

尝试将文件放入单独的文件夹中(每个文件 1 个文件夹)

从这里的评论:https://generateme.wordpress.com/2015/08/12/training-own-dnn-for-deep-dream/

我有大约 15k 张图像,每张图像都需要自己的文件夹。当我的图像较少时,我运行了一次,效果很好:

a=0; for i in *.jpg; do mkdir -p $a; mv $i $a; a=$((a+1)); done

但当我运行它时,10000.jpg 进入文件夹“0”。我认为这与第 5 位数字有关,但我将其缩小到 9999,它将 1000.jpg 放入“0”。我进一步检查了 1934 等随机文件夹,到那时它已经完全崩溃了,我不知道为什么那个特定的 .jpg 编号会位于该编号文件夹中。有没有办法修复这条线,或者我应该使用另一条线来执行此操作?

答案1

您似乎没有明确这么说,但如果您所有的 JPEG 文件都有文件名,那么更简单的方法是使用 ${x%.jpg} 来创建一个变量,该变量只是 JPEG 文件的基本名称没有.jpg

for i in *.jpg; do d="${i%.jpg}"; mkdir "$d"; mv "$i" "$d"; done

相关内容