como navegar pelos diretórios com pilhas de arquivos

1

Meu sistema de arquivos Linux possui dezenas de milhares de arquivos por diretório. A visualização de 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, portanto, quero ver uma lista dos primeiros, como o que o comando head faz para arquivos grandes. Existe um comando que faz isso eficientemente?

Editar: Pipar 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 retornará apenas os primeiros registros.

    
por hoju 30.11.2009 / 14:15

5 respostas

3

Experimente ls -f , o que não é ordenado.

    
por 30.11.2009 / 14:17
0

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

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

ls | more

Você pode até mesmo empurrar isso para algum arquivo, se você quiser, para que você possa consultá-lo mais tarde, para isso, use isso

ls | more > filenames.txt

Obrigado

    
por 30.11.2009 / 14:21
0

Se você quiser listar N primeiras entradas, Gostaria apenas de criar um pequeno programa em C que faz uma chamada opendir e depois N chama para readdir

    
por 30.11.2009 / 14:22
0

Depende do sistema de arquivos, mas geralmente é mais rápido listar apenas os nomes de arquivos (veja o objeto de diretório) em relação a todos os metadados do arquivo (salva um stat () por arquivo).

Você já tentou ls -R ?

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

    
por 30.11.2009 / 14:26
0

Você pode usar head :

ls -l | head
    
por 30.11.2009 / 15:14

Tags