Kako sačuvati gornji izlaz komande u datoteku


Linux top komandu često koriste sistemski administratori za prikaz sistemske statistike u realnom vremenu u vezi sa iskorišćenjem sistema i prosječnim opterećenjem, iskorištenom memorijom, pokrenuti zadaci, sažetak procesa ili niti i detaljne informacije o svakom pokrenutom procesu.

Međutim, osim pregleda u realnom vremenu pokrenutog sistema, izlaz naredbe top može se sačuvati u datoteku, korištenjem oznake -b, koja daje upute top da radi u batch modu i -n zastavica za određivanje količine iteracije koju naredba treba proizvesti.

U primjeru ispod, preusmjerit ćemo izlaz top komande u datoteku top.txt u trenutnom radnom direktoriju. Argument -n će se koristiti za slanje samo jednog snimka komande u pomenutu datoteku.

top -b -n 1 > top.txt

Da biste pročitali rezultirajuću datoteku, koristite uslužni program za čitanje datoteka u komandnoj liniji, kao što je cat naredba, manje ili više.

less top.txt

Da biste preuzeli pet iteracija top komande, izvršite naredbu kao što je prikazano u donjem izvodu.

top -b -n 5 > top-5iterations.txt

Da biste prikazali samo broj pokrenutih zadataka iz rezultirajuće datoteke, koristite filter grep, kao što je prikazano u primjeru naredbe ispod.

cat top-5iterations.txt | grep Tasks

Da snimite snimak određenog procesa u glavnom uslužnom programu, izvršite naredbu sa zastavicom PID (-p). Da biste dobili PID procesa koji je pokrenut, izdajte komandu pidof uz ime procesa koji je pokrenut.

U ovom primjeru ćemo pratiti proces cron putem top komande tako što ćemo napraviti tri snimka PID-a.

pidof crond
top -p 678 -b -n3 > cron.txt
cat cron.txt

Koristeći for petlju, možemo prikazati statistiku procesa preko njegovog PID-a, svake dvije sekunde, kao što je prikazano u primjeru ispod. Izlaz petlje se također može preusmjeriti na datoteku. Koristit ćemo isti cron PID kao što je prikazano u gornjem primjeru.

for i in {1..4}; do sleep 2 && top -b -p 678 -n1 | tail -1 ; done	

Preusmjerite izlaz petlje u datoteku.

for i in {1..4}; do sleep 2 && top -b -p 678 -n1 | tail -1 ; done >> cron.txt
cat cron.txt

Ovo je samo nekoliko primjera kako možete pratiti i prikupljati statistiku sistema i procesa putem top komande.