При попытке удалить большого количества файлов по маске, например при удалении несколько миллионов с расширением txt появляется ошибка Argument list too long(Слишком длинный список аргументов).
# rm -f *.txt -bash: /usr/bin/rm: Argument list too long
Аналогично если использовать find
[root@localhost dir]# find . -name *.txt | xargs rm -bash: /usr/bin/find: Слишком длинный список аргументов rm: пропущен операнд
Все это из за того что файлов больше чем допустимый лимит, проверить который можно командой
getconf ARG_MAX
Т.е в нашем случае если количество файлов больше 2097152, то удалить их командой rm не получится. Для удаления воспользуйтесь следующими командами. Например что бы удалит все файлы .jpg
С помощью ls и grep
ls | grep .jpg| xargs rm
Используя echo.
echo *.jpg | xargs -n 100 rm
Существуют множество других решений, например с помощью цикла for или скриптов, но по мне эти 2 способа самые удобные и легко запоминающиеся.