Pidof: Difference between revisions
No edit summary |
No edit summary |
||
Line 54: | Line 54: | ||
== Kokkuvõte == | == Kokkuvõte == | ||
Süsteemi PID on võimalik näha ka käsuga <code>ps -ef</code>, kuid ilma otsingut rakendamata (nt <code>|grep nano</code>) tuleb huvi pakkuvad programmid ja protsessid ise üles otsida. Pidof käsk võimaldab kõik spetsiifilise programmiga seotud PID kerge vaevaga süsteemist üles leida. Leitud PID võib näiteks kasutada protsesside ja seeläbi ka programmi töö lõpetamiseks. | Süsteemi PID on võimalik näha ka käsuga <code>ps -ef</code>, kuid ilma otsingut rakendamata (nt <code>|grep nano</code>) tuleb huvi pakkuvad programmid ja protsessid ise väljundist üles otsida. Pidof käsk võimaldab kõik spetsiifilise programmiga seotud PID kerge vaevaga süsteemist üles leida. Leitud PID võib näiteks kasutada protsesside ja seeläbi ka programmi töö lõpetamiseks. | ||
== Kasutatud materjalid == | == Kasutatud materjalid == |
Revision as of 17:33, 31 December 2015
Sissejuhatus
Pidof on UNIX süsteemi käsk, mis tagastab töötava programmi protsessi ID-d ehk PID (process identificator).[1]
Kirjeldus
Kui kasutaja sisestab UNIX süsteemis ükskõik missuguse käsu (näiteks käivitab programmi), siis luuakse või käivitatakse uus protsess. UNIX peab arvestust kõigi protsesside üle, mis süsteemis käivitatakse. Igal protsessil on unikaalne (vaikimisi ühe- kuni viiekohaline)[2] number ehk PID, mille järgi saab protsessi masinast üles leida.[3]
Pidof käsk otsib programmi nime järgi töötava programmi PID ja prindib need PID standardväljundisse.[4]
Pidof käsku on soovitav kasutada juurkasutaja õigustes, sest tavakasutaja õigustes olles ei pruugi see kõikide programmide protsesse tagastada.[5]
Süntaks
Pidof käsu süntaks on:
pidof [programm]
Käsk tagastab kõik nimetatud programmi PID.
või
pidof [võti] [programm]
Pidof käsu võtmed on:[6]
-s
Üksiktulem (single shot): käsk tagastab nimetatud programmi ühe (esimese) PID.
-c
Üksnes sama juurkataloog: käsk tagastab nimetatud programmi üksnes need PID, mis töötavad samas juurkataloogis. Seda võtit saab kasutada ainult juurkasutaja, teiste puhul seda ignoreeritakse, sest tavakasutajal puuduvad õigused näha, millised temale mittekuuluvad protsessid juurkataloogis töötavad.
-x
Skriptid samuti (scripts too): käsk tagastab nimetatud skriptide PID. Ilma võtmeta käsk ja teised võtmed ignoreerivad skripte.[7]
-o
Jäta välja (omit): käsk tagastab kõik nimetatud programmi PID, v.a selle PID, mis käsu võtmes määratakse. Välja jäetavaid PID võib sisestada mitu. Selle võtmega võib kasutada ka spetsiaalset PID %PPID, mis tähistab pidof programmi vanemaprotsessi ehk protsessi, mis selle programmi käivitas. See on kasulik näiteks siis, kui on soov protsesse loendada, kuid seejuures mitte arvesse võtta pidof programmi ennast.[8]
Samal ajal võib kasutada mitut võtit.
Näited
Allolevate näidete puhul on kasutaja käivitanud nano programmi neli korda ja igale seeläbi käivitunud protsessile on süsteemi poolt antud oma unikaalne PID. Kokku on süsteemis seega neli nanoga seotud PID: 2456 2457 2489 2567
. Kõik PID on aktiivsed.
Kõikide nano PID saamiseks tuleb kasutada käsku: pidof nano
Tulem: 2456 2457 2489 2567
Selgitus: Tulemis tagastatakse kõik neli PID.
Ühe nano PID saamiseks tuleb kasutada käsku: pidof –s nano
Tulem: 2456
Selgitus: Tulemis tagastatakse vaid üks (kõige esimene) PID.
Kõikide, v.a käsus nimetatud, nano PID saamiseks tuleb kasutada käsku: pidof –o 2456 nano
Tulem: 2457 2489 2567
Selgitus: Tulemis tagastatakse kolm PID, sest käsus oli määratud üks PID, mida väljundis ei kuvata.
Kokkuvõte
Süsteemi PID on võimalik näha ka käsuga ps -ef
, kuid ilma otsingut rakendamata (nt |grep nano
) tuleb huvi pakkuvad programmid ja protsessid ise väljundist üles otsida. Pidof käsk võimaldab kõik spetsiifilise programmiga seotud PID kerge vaevaga süsteemist üles leida. Leitud PID võib näiteks kasutada protsesside ja seeläbi ka programmi töö lõpetamiseks.
Kasutatud materjalid
1. http://linux.about.com/library/cmd/blcmdl8_pidof.htm
2. http://www.cyberciti.biz/tips/howto-linux-increase-pid-limits.html
3. http://www.eenet.ee/EENet/assets/docs/tigu/tigu.2.html#protsessid
4. http://linux.die.net/man/8/pidof
5. http://www.cyberciti.biz/faq/linux-pidof-command-examples-find-pid-of-program
6. https://blog.jay2k1.com/2011/11/30/bash-how-to-check-if-your-script-is-already-running/
7. http://www.tutorialspoint.com/unix/unix-processes.htm
Autor
Jevgeni Pogodin A51
Sügis 2014
Siim Jurkatam AK21
Sügis 2015