Обычно предлагается удалять через find и рабочий вариант, но в моем случаи 1.5млн удаляло часов 10 что недопустимо долго так перебирать пошел другим путем через цыклы и маски
for i in {a..z}
do
rm /var/www/*/data/www/*/system/sessions/sess_$i[a-c]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[d-g]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[h-k]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[l-n]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[p-r]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[s-v]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[w-y]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[y-z]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[0-2]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[3-5]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[6-8]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[8-9]*
rm /var/www/*/data/www/*/system/sessions/sess_$i*
done
for i in {0..9}
do
rm /var/www/*/data/www/*/system/sessions/sess_$i[a-c]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[d-g]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[h-k]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[l-n]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[p-r]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[s-v]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[w-y]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[y-z]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[0-2]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[3-5]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[6-8]*
rm /var/www/*/data/www/*/system/sessions/sess_$i[8-9]*
rm /var/www/*/data/www/*/system/sessions/sess_$i*
done
Или удалить файлы, которые старше семи дней:
for f in /tmp/logs/*.log
do
find $f -mtime +7 -exec rm {} \;
done
Удаление заняло несколько минут времени.