#bash #macos #terminal #kill
Вопрос:
У меня есть пять экземпляров mongrel_rails, запущенных под моим именем пользователя («макс»).:
$ ps aux | grep mongrel_rails max 32500 98.8 0.2 10061608 34112 s007 R 12:52pm 13:47.15 mongrel_rails [3003/1/0]: handling 127.0.0.1: GET /music_service_admin max 32497 98.4 10.6 10085244 1779008 s007 R 12:52pm 8:11.85 mongrel_rails [3000/1/1]: handling 127.0.0.1: GET /music_service_admin max 34449 0.0 0.0 408103312 1360 s009 S 1:07pm 0:00.00 grep mongrel_rails max 32501 0.0 14.2 10035048 2388400 s007 S 12:52pm 0:39.37 mongrel_rails [3004/0/3]: idle max 32499 0.0 12.6 10035060 2108720 s007 S 12:52pm 0:39.72 mongrel_rails [3002/0/3]: idle max 32498 0.0 12.5 10031968 2096576 s007 S 12:52pm 0:32.58 mongrel_rails [3001/0/2]: idle
killall
не хочет позволять мне убивать их:
$ killall mongrel_rails No matching processes belonging to you were found $ sudo killall mongrel_rails Password: No matching processes were found
Я недавно перешел на mac с linux для разработки. В Linux это работало нормально, в чем здесь проблема, может кто-нибудь увидеть?
Я могу убить отдельные процессы, например kill -9 32500
, с помощью, но я хочу вызвать killall из сценария.
Ответ №1:
pkill -f {process_name}
и если вам отказано в разрешении, просто добавьте:
sudo pkill -f {process_name}
Комментарии:
1. спасибо — это кажется хорошим подходом, но когда я попробовал это сделать, мне не удалось убить двоих из них. Интересно, что причина, по которой я хотел убить их в первую очередь, заключалась в том, что двое из них «застряли» на чем-то, и именно этих двоих не убивают.