Sprawdzanie zużycia zasobów danego procesu w linuxie

Szymoon202 | 2019-03-31 08:58:36 UTC | #1

Cześć. Czy istnieje jakaś komenda, bądź przy użyciu grep której wynikiem będzie ilość zużywanej pamięci RAM i procent zużycia procesora? Chcę ją wykonać bezpośrednio z ze strony innej aplikacji. Myślałem coś o ps x i potem wyszukać linię która zawiera id danego procesu, lecz to chyba będzie dość skomplikowane by wybrać potem z tej linii zużycie pamięci i procesora. Jest jakaś inna opcja?
@EDIT: głównie chodzi o zużycie zasobów przez danego “screena”.


LinGruby | 2019-03-31 09:10:27 UTC | #2

podstawa do procesów itp. to htop jak nie masz to na Debian-pochodnych distrach apt install htop
a co do ram to można jeszcze free -m

[quote=”Szymoon202, post:1, topic:10557”]
głównie chodzi o zużycie zasobów przez danego “screena”.
[/quote]
to htop wystarczy ;-)


Szymoon202 | 2019-03-31 09:43:13 UTC | #3

jak przy pomocy komendy htop wyciągnąć dane dot. screena/procesu tak by po jej wykonaniu w rezultacie otrzymać wyniki?


LinGruby | 2019-03-31 10:11:59 UTC | #4

patrzysz na liście ot wszystko ;-)

htop:

https://pl.wikipedia.org/wiki/Htop

http://hisham.hm/htop/


a tak się zapytam to jakieś zadanie domowe może?
( bo już mnie nic nie dziwi… )


Szymoon202 | 2019-03-31 10:18:02 UTC | #5

nie jest to zadanie domowe, mam napisaną aplikację i chciałbym wyświetlić na stronie www używając php jej statystyki. nie bardzo mnie rozumiesz. gdy wykonam przez shell_exec bądź passthru komendę htop to nic nie zostanie zwrócone gdyż htop działa “do końca” i rezult został by zwrócony dopiero gdy zamknęlibyśmy program. właśnie dlatego potrzebuję polecenia, które mi zwróci po prostu ilość zużywanych zasobów. próbowałem coś kombinować przy ograniczaniu ilości pętli w top - top -n 1 -p <pid> lecz to również nic nie dało.


Nieznajomy11 | 2019-03-31 10:19:38 UTC | #6

Nie korzystaj z shell_exec. Na dobre wyjdzie. :smiley:

Te dane mają dotyczyć konkretnego procesu czy całości?


Szymoon202 | 2019-03-31 10:21:53 UTC | #7

ta aplikacja sama mogłaby mi wysyłać dane dot. jej pracy, ale są też inne, które już nie są moje i nie da się ich w tak prosty sposób zmodyfikować, dlatego potrzebowałbym danych dot. jednego procesu działającego w screenie. (nie wiem czy po polsku napisane, ale może zrozumiesz)


Lumpiasty | 2019-03-31 13:54:12 UTC | #8

Nie wiem czy to pomoże, ale proszę: top -bn 1
Ta komenda od razu zwraca całą zawartość top, bez scrollowania. Z tego już sam sobie wybierzesz linikę, która cię interesuję. (Możesz szukać np. po PID na początku liniki)


system | 2019-05-02 13:54:13 UTC | #9

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.