Cara Menyimpan Output Perintah Teratas ke File


Perintah teratas Linux sangat digunakan oleh administrator sistem untuk menampilkan statistik sistem secara real-time mengenai waktu aktif sistem dan rata-rata beban, memori yang digunakan, tugas yang sedang berjalan, ringkasan proses atau rangkaian pesan, dan informasi mendetail tentang setiap proses yang berjalan.

Namun, selain melihat sistem yang sedang berjalan secara real-time, output perintah top dapat disimpan ke file, dengan menggunakan flag -b, yang memerintahkan top untuk beroperasi dalam mode batch dan -n tandai untuk menentukan jumlah iterasi yang harus dihasilkan oleh perintah.

Pada contoh di bawah, kami akan mengalihkan output dari top command ke file top.txt di direktori kerja saat ini. Argumen -n akan digunakan untuk mengirim hanya satu snapshot dari perintah ke file yang disebutkan.

top -b -n 1 > top.txt

Untuk membaca file yang dihasilkan, gunakan utilitas pembaca file baris perintah, seperti perintah cat, less atau more.

less top.txt

Untuk mengambil lima iterasi dari perintah teratas, jalankan perintah seperti yang ditunjukkan dalam kutipan di bawah ini.

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

Untuk menampilkan hanya jumlah tugas yang berjalan dari file yang dihasilkan, gunakan filter grep, seperti yang ditunjukkan pada contoh perintah di bawah ini.

cat top-5iterations.txt | grep Tasks

Untuk mengambil cuplikan proses tertentu di utilitas teratas, jalankan perintah dengan tanda PID (-p). Untuk mendapatkan PID dari proses yang sedang berjalan, berikan perintah pidof pada nama proses yang sedang berjalan.

Dalam contoh ini kita akan memantau proses cron melalui perintah top dengan mengambil tiga snapshot PID.

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

Dengan menggunakan perulangan for, kita dapat menampilkan statistik proses melalui PID-nya, setiap dua detik, seperti yang ditunjukkan pada contoh di bawah. Output dari loop juga dapat dialihkan ke file. Kami akan menggunakan PID cron yang sama seperti yang ditunjukkan pada contoh di atas.

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

Arahkan ulang keluaran loop ke file.

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

Ini hanyalah beberapa contoh bagaimana Anda dapat memantau dan mengumpulkan statistik sistem dan proses melalui perintah teratas.