Другим способом, если это можно было бы сделать сегодня, может быть уместно для ваших проблем с производительностью:
I=0; ls -cr /dir/ | while read file; do I=`expr $I + 1`; echo "$file"; if [ $I == 100 ]; then break; fi; done
Это должно теоретически начать выдавать намного быстрее, но я думаю, что это зависит от того, откуда происходит отставание. Для сортировки файлов может потребоваться много времени ls.