フォルダには1000個のファイルがあり、それぞれ100個のファイルに分割する必要があります。その後、この100個のファイルを自動的に作成された新しいフォルダに自動的に移動する必要があります。
このコマンドを使用してファイルを手動で移動します。
for file in $(ls -p | grep -v / | tail -100);
do
mv "$file" NEWFOLDER;
done
ただし、単一のフォルダに約10,000個のファイルがある場合、これは非常に難しいでしょう。
答え1
#!/bin/bash
c=1; d=1; mkdir -p NEWDIR_${d}
for jpg_file in *.jpg
do
if [ $c -eq 100 ]
then
d=$(( d + 1 )); c=0; mkdir -p NEWDIR_${d}
fi
mv "$jpg_file" NEWDIR_${d}/
c=$(( c + 1 ))
done
このコードを試してください
うまくいきます。テストしてみました。