как переместиться по каталогам с "кучей" файлов

Моя файловая система Linux имеет десятки тысяч файлов на каталог. Просмотр списка всех файлов занимает несколько минут для моей системы для вычисления, который является слишком медленным. Но я не уверен, какие файлы находятся в каждом каталоге так хотят просмотреть список нескольких первых, как то, что главная команда делает для больших файлов. Существует ли команда, которая эффективно делает это?

Править: Передача по каналу ls к чему-то еще бесполезна, потому что ls занимает несколько минут, чтобы завершиться, прежде, чем передать вывод по каналу. Мне нужна команда, которая только возвратит первые несколько записей.

1
задан 31.10.2014, 15:09

5 ответов

Попробовать ls -f который не сортирует.

3
ответ дан 12.12.2019, 10:48

Для каждого из каталогов можно сделать следующее сценарием оболочки

Попробуйте это, это дает одну страницу, полную записей

ls | more

Можно даже продвинуть это в некоторый файл, если Вы хотите так, чтобы можно было обратиться к нему позже для того использования это

ls | more > filenames.txt

Спасибо

0
ответ дан 12.12.2019, 10:48

Если бы Вы хотите перечислить N первые записи, я просто создал бы маленькую программу C, которая делает вызов opendir, и затем N звонит в readdir

0
ответ дан 12.12.2019, 10:48

Это зависит от файловой системы, но это обычно более быстро для списка имен файлов только (посмотрите на объект каталога) по сравнению со всеми метаданными файла (сохраняет одну статистику () на файл).

Вы попробовали ls -R?

Иначе это могло бы заплатить, Вы для выполнения GNU определяете местоположение программы в фоновом режиме периодически и используете сгенерированный DB для отслеживания его.

0
ответ дан 12.12.2019, 10:48

Можно использовать head:

ls -l | head
0
ответ дан 12.12.2019, 10:48

Теги

Похожие вопросы