Saya menemukan output dari perintah shell top
menjadi cara sederhana dan akrab untuk mendapatkan gambaran kasar tentang kesehatan mesin. Saya ingin menyajikan top
output (atau sesuatu yang sangat mirip) dari server web kecil pada mesin untuk keperluan pemantauan mentah.
Apakah ada cara untuk mendapatkan puncak untuk menulis output teksnya tepat sekali , tanpa memformat karakter? Saya sudah mencoba ini:
(sleep 1; echo 'q') | top > output.txt
Ini sepertinya dekat dengan yang saya inginkan, kecuali bahwa (1) tidak ada jaminan bahwa saya tidak akan mendapatkan lebih dari satu layar penuh informasi dan (2) saya harus menghapus semua karakter pemformatan terminal.
Atau adakah top
perintah mirip lainnya yang mencantumkan info memori / penggunaan CPU / informasi tingkat mesin secara keseluruhan dan tingkat proses?
(Idealnya, saya suka strategi yang portabel untuk Linux dan Mac OS X, karena pengembang kami menggunakan Mac dan lingkungan prod kami adalah Linux.)
sumber
top
pada OS X mendukung -b flag. :-( Sayangnya, tidak, dan saya tidak melihat versi yangtop
tersedia melalui homebrew. Ini sepertinya jawaban yang tepat untuk Linux, tho./usr/bin/top -l 1
di OSX 10.9.4 sempurna ... terima kasih! Sedangkan untuk menginstal GNU top, saya bisa menginstalnya di mesin saya , tetapi saya harus meyakinkan para pengembang lain untuk menginstalnya di mesin mereka agar kode saya berfungsi untuk mereka, jadi saya lebih suka menghindari itu. (Jika itu tidak tersedia melalui homebrew, akan ada perlawanan.) Sekarang saya akan beralih berdasarkan platform, saya akan menjadi serakah ... apakah Anda mengetahui adanya Windows semi-equivalen sehingga para pengembang (kami memiliki beberapa) juga dapat memiliki halaman status mentah? (Jika tidak, tidak apa-apa, jawaban Anda sudah sangat membantu!)top -l 2
dan membuang halaman sampel pertama?Untuk mendapatkan nomor tipe yang serupa dari sistem Windows Anda ingin melihat PowerShell.
Hanya untuk mendapatkan daftar proses yang Anda dan lihat
get-process
. Lihatlah referensi ini .Dalam melakukan beberapa pencarian lebih lanjut, temukan perintah kecil yang menyenangkan di sini .
Yang jika Anda ambil dari loop sementara yang disajikan, untuk kebutuhan Anda adalah:
ps
di PowerShell adalah alias untukget-process
.sumber