создать список найденных файлов
echo "$(find *.txt -type f)" > list.txt
в нём оставить/удалить нужное кол-во строк
head --lines=10 list.txt > new_list.txt
потом удаляем все файлы записаные в new_list.txt
cat new_list.txt | xargs rm -rv
всё это можно упростить/сократить,но так будет понятней
Поправка: возможно, вместо tail лучше взять head, у неё можно указать отрицательное количество строк, чтобы вывести все строки, кроме указанного количества