Иногда, когда я пытаюсь запустить Firefox, он говорит: «Процесс Firefox уже запущен». Так что я должен сделать это:
jeremy@jeremy-desktop:~$ ps aux | grep firefox
jeremy 7451 25.0 27.4 170536 65680 ? Sl 22:39 1:18 /usr/lib/firefox-3.0.1/firefox
jeremy 7578 0.0 0.3 3004 768 pts/0 S+ 22:44 0:00 grep firefox
jeremy@jeremy-desktop:~$ kill 7451
То, что я хотел бы, это команда, которая сделает все это для меня. Он будет принимать входную строку и grepдля нее (или чего-либо еще) в списке процессов, и убьет все процессы в выводе:
jeremy@jeremy-desktop:~$ killbyname firefox
Я пытался сделать это в PHP, но, exec('ps aux')кажется, показывает только процессы, которые были выполнены exec()в самом скрипте PHP (поэтому единственный процесс, который он показывает, это сам).
pkill -f "Process name"команду ...