Você deve ter problemas quando tiver espaços no path
dos arquivos encontrados.
Tente com um loop while read do ... done
como:
#!/bin/bash
find /home/ -name "killstat.php" | while read i
do
/usr/bin/php -f "$i";
done
Observe as aspas duplas " em /usr/bin/php -f "$i";
Caso seu script precise ser executado a partir de lugar dele
#!/bin/bash
find /home/ -name "killstat.php" | while read i
do
Cdir=$(dirname "$i")
Cname=$(basename "$i") # This line can be avoided...
cd "$Cdir"
/usr/bin/php -f "$Cname"; # ...if here you use killstat.php [1]
cd -
done
Anote novamente as aspas duplas para $i
apenas no caso de você ter espaços na string do diretório.
O duplo não é realmente necessário para $Cname
, pois você sabe que, nesse caso, é killstat.php
.
[1] Você pode colocar diretamente killstat.php
em vez de $Cname
e evitar escrever todas as linhas com Cname no script.