Encontrar apenas em diretórios n níveis profundos

1

Eu uso este comando para encontrar e executar todas as istâncias do wp-cron.php que tenho para cada site que tenho:

find /var/www/ -name 'wp-cron.php' -exec php -q "{}" \;

Como minha árvore de websites é:

/var/www/site1/htdocs/WORDPRESS-FILES
/var/www/site2/htdocs/WORDPRESS-FILES
/var/www/site3/htdocs/WORDPRESS-FILES
/var/www/site4/htdocs/WORDPRESS-FILES

... Eu gostaria de limitar meu comando a apenas 3 ou 4 níveis dentro de / var / www / para evitar o desperdício de recursos e tempo! Como posso fazer isso?

Estou no Ubuntu 14.10.

    
por MultiformeIngegno 06.04.2015 / 03:32

1 resposta

2

Se o seu comando find tem a opção -maxdepth (Linux (GNU ou BusyBox), FreeBSD, NetBSD, OSX):

find /var/www -maxdepth 3 -name wp-cron.php -exec php -q "{}" \;

Se você deseja executar wp-cron.php arquivos em uma profundidade exata, use curingas:

for x in /var/www/*/*/wp-cron.php; do
  php -q wp-cron.php
done

Você pode executar

locate wp-cron.php

para listar rapidamente todos os arquivos chamados wp-cron.php que existiam na última vez que o banco de dados foi atualizado (tipicamente todas as noites).

    
por 07.04.2015 / 01:52