Witaj na Forum Linuxiarzy
Zanim zalogujesz się, by pisać na naszym forum, zapoznaj się z kilkoma zasadami savoir-vivre'u w dziale Administracja.
Wiadomości z problemami zamieszczone w wątku "Przywitaj się" oraz wszelkie reklamy na naszym forum będą usuwane.

Skrypt sh PID

Zaczęty przez Mavannkas, Grudzień 22, 2018, 03:06:30 PM

Poprzedni wątek - Następny wątek

Mavannkas

Witam,
wie ktoś może jak za pomocą skryptu pobrać PID jakiegoś procesu (nr. TOP) i później go np zatrzymać poleceniem kill? Próbuję to zrobić i nie mam już pomysłów. Z góry dziękuję za pomoc.

lesio

Trochę więcej założeń jest potrzebnych. Zasadniczo polecenie ps (np. ps -ef) trzeba wrzucić potokiem na polecenie grep, wyszukać co potrzeba, znowu wrzucić na potok i wydrukować (np. przy pomocy awk) nr procesu.
np.:
ps -ef|grep WZORZEC|awk '{ print $2 }'

a żeby użyć kill:
kill -15 `ps -ef|grep WZORZEC|awk '{ print $2 }'`

To oczywiście tylko propozycja, można to zrealizować na wiele sposobów (chociażby cut zamiast awk lub wyszukiwać WZORZEC bezpośrednio przez awk lub też zastosować inną postać komendy ps itd.)

lami07

Polecenie "pidof" poda ci id szukanego procesu. Dla przykładu pidof top wyświetli pid aktywnego procesu top
Jak chcesz za jednym zamachem uśmiercić taki proces to kill -15 $(pidof top)
IRC - #linuxiarze.pl w sieci [url="//libera.chat"]libera.chat[/url]
Matrix - #linuxiarze.pl w sieci [url="//matrix.org"]matrix.org[/url]

lesio

Jest jeszcze polecenie killall - chyba najprościej:
$ killall WZORZEC
np:
$ kilall opera
lub
$ killall -15 opera

hobbysta

Zacznijmy od właściwej strony końca kija. Do czego Ci to potrzebne?

Zobacz najnowsze wiadomości na forum