Comandos do Linux para buscar todos os arquivos, tamanho e caminho dos arquivos de todos os diretórios e subdiretórios

0

Alguém pode me guiar, como eu uso comandos Linux em código PHP para buscar todos os nomes de arquivos e seu tamanho e caminho de arquivos de todos os diretórios e subdiretórios.

Estou executando um código de verificação. onde eu preciso buscar os arquivos e fazer uma varredura. O problema é que quando eu corro no servidor linux demora muito para executar a varredura. Então, eu pensei em adicionar comandos linux ao meu script php e verificar que se o servidor é linux, em vez da minha função, essas marcas podem ser usadas e, portanto, aumentar a velocidade de varredura.

    
por user930026 30.08.2013 / 13:10

1 resposta

1

Solução ingênua:

$files = system('find / -printf "%p %b\n"');

Explicação:

  • $files = system(...) Será executado um comando shell especificado e armazenará a saída na variável $files .
  • find / -printf("%p %b\n") O comando find listará todos os arquivos a partir da raiz do sistema de arquivos / . As opções -printf informam ao find para formatar sua saída de acordo com o formato especificado. A string de formato "%p %b\n" fará com que find exiba o caminho do arquivo ( %p ), seguido por um espaço, seguido pelo tamanho do arquivo em blocos de 512 bytes ( %b ), seguido por uma nova linha (%código%). As opções \n também suportam um especificador de formato -printf , que imprimirá o tamanho do arquivo em blocos de 1 KB.
por 30.08.2013 / 13:32

Tags