3

私は次のものを持っています:

kill -9 `ps aux | grep php | awk '$9 !~ /[0-9]:[0-9]/' | awk '{print $2}'`

それが行うことは、fcgidによって放棄されたままにされたプロセスを強制終了し、RAMを解放するためにそれらを強制終了することです。これを1時間ごとにcronとして実行したいのですが、1時間より古いプロセスを強制終了したいと思います。それを行うためにスクリプトを変更する方法がわかりません。

4

2 に答える 2

9

次のbashコードを試してください。

for i in $(pidof php); do
    pidtime=$(stat -c '%Y' /proc/$i)
    now=$(date +%s)
    ((now - pidtime >= 3600)) && { kill $i; sleep 1; kill &>/dev/null -9 $i; }
done

およびcrontab:

crontab -e
0 * * * * /path/to/the/script.bash
于 2012-10-07T03:25:56.887 に答える
-1

で解決:

/bin/ps -Ao"command,pid,ppid"|/bin/grep ' 1$'|/bin/grep /php|/bin/awk '{ print $2; }'|/usr/bin/xargs --no-run-if-empty kill -9
于 2012-11-28T21:54:49.277 に答える