como navegar em diretórios com montes de arquivos


1

Meu sistema de arquivos Linux possui dezenas de milhares de arquivos por diretório. Visualizar uma lista de todos os arquivos leva alguns minutos para o meu sistema calcular, o que é muito lento. Mas não tenho certeza de quais arquivos estão em cada diretório, por isso, quero exibir uma lista dos primeiros, como o que o comando head faz para arquivos grandes. Existe um comando que faça isso com eficiência?

Editar: canalizar ls para outra coisa não é bom porque ls leva alguns minutos para ser concluído antes de canalizar a saída. Eu preciso de um comando que retorne apenas os primeiros registros.


Por que tantos arquivos em um diretório?
Mouviciel 30/11/2009

Isso importa? De qualquer forma, é baixado o conteúdo da web.
Hoju

Respostas:


3

Tente o ls -fque não classifica.


Uau, isso é muito mais rápido, e fazer também ls -f | sort | lessé muito mais rápido! Loucura.
BeepDog

0

Para cada um dos diretórios, você pode fazer o seguinte por um script de shell

Tente isso, isso fornece uma página cheia de entradas

ls | more

Você pode enviar isso para algum arquivo, se desejar, para consultá-lo mais tarde, para que use este

ls | more > filenames.txt

obrigado


+1 apesar moreutilizado pouco antes um redirecionamento
mouviciel

"menos é mais" - se você lessusá-lo em vez demore
Dennis Williamson

Há também a "maioria" (alguém tinha dificuldade em nomear seu programa :)
alfplayer

0

Se você quiser listar N primeiras entradas, eu apenas criaria um pequeno programa C que faz uma chamada aberta e depois N chama o readdir


é o mesmo que encabeçar a lista de arquivos. e cabeça ou ls são programas C

Prefiro não criar meu próprio script, porque gostaria de uma solução que funcione em algumas máquinas, sem ter que copiar meu script.
Hoju

0

Depende do sistema de arquivos, mas geralmente é mais rápido listar apenas os nomes de arquivos (observe o objeto do diretório) versus todos os metadados do arquivo (salva uma estatística () por arquivo).

Você já tentou ls -R?

Caso contrário, pode ser necessário executar o programa de localização GNU em segundo plano periodicamente e usar o banco de dados gerado para rastreá-lo.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.