Você pode usar set , processar lotes de 100 arquivos por meio de "${@:START:COUNT}" (intervalo de parâmetros posicionais) e shift 100 ao incrementar um contador c para criar os diretórios:
set -- *.pdf
c=1
while (($#)); do
mkdir ${c}
if [ $# -ge 100 ]; then
mv -- "${@:1:100}" ${c}
c=$((c+1))
shift 100
else
mv -- "${@}" ${c}
shift $#
fi
done