2012-11-07 2 views
1

je dois écrire quelques scripts pour certains travaux d'automatisation,script php pour tuer des processus « sommeil » shell

je mets un fichier php sur le serveur apache locale test.php

<?php 
system("bash inform.sh"); 
?> 

le contenu inform.sh est:

#!/bin/bash 
proc_id=`ps -ef|grep "sleep"|grep -v "grep"|awk '{print $2}'` 
kill -9 $proc_id 

Je lance processus de sommeil sur une coquille, et ouvrir la page php sur firefox: localhost/test.php mais il ne tue pas le processus du sommeil, si je lance le php directement à travers shell, alors cela fonctionne quel est le problème avec cela et comment faire face à cela? grâce

+2

pari un million de dollars Its a émission d'autorisation. l'utilisateur du serveur Web et quoi que vous vous connectiez au shell, ont un accès différent –

+0

ils sont sur la même machine – user1769686

+0

'$ retval = system (" bash inform.sh ");' Whats $ retval? – ficuscr

Répondre

0

J'utilise la commande shell suivante, puis il est OK:

sudo -u apache sleep 2000