回答:
次は私のためにうまくいきました。ターミナルでディレクトリを開き、次のスクリプトをコピーして貼り付け、Enterキーを押します。サブディレクトリは、dir_001、dir_002などの名前で作成されます。
i=0;
for f in *;
do
d=dir_$(printf %03d $((i/100+1)));
mkdir -p $d;
mv "$f" $d;
let i++;
done
これにより、必要なディレクトリの数とサブディレクトリのプレフィックスが表示されます。lsコマンドは、取得したファイルの数を思い出させるだけのものです。
ls -1 | wc -l
read -p 'How Many Directories: ' F;
read -p 'Sub-Directories Prefix: ' S;
PARRENT=${PWD}
# cd $PARRENT
n=0
for i in *
do
if [ $((n+=1)) -gt $F ]; then
n=1
fi
todir=$PARRENT/"$S"_$n
[ -d "$todir" ] || mkdir "$todir"
mv "$i" "$todir"
done
出典:https : //www.unix.com/shell-programming-and-scripting/248539-split-folder-huge-number-files-n-folders.html