У меня в MacOS X более 100 000 файлов в каталоге, и, похоже, мой скрипт медленно читает в них файл.
Есть ли ограничение или рекомендация иметь столько файлов? Должен ли я разделить их на несколько каталогов?
Ограничение, которое я нашел, было то, что я не могу mv * foo
для всех 100 000 файлов. Это показывает ошибку, говоря «слишком длинный аргумент». Он работает с примерно менее 20000 файлов.
*
или ?
как часть аргумента команды, операционная система ищет во всем каталоге соответствующие файлы (медленно), а затем заменяет ваш аргумент списком каждого соответствующего файла (долго), который затем передает команда. Вы могли бы сделать лучше с петлей или с несколькими командами мв, например, mv a* foo && mv b* foo
.