Mac OS X sysctl mendapatkan ukuran total dan memori gratis


Jawaban:


8

Kamu tidak.

Nah, kecuali untuk ukuran memori total, yang bisa Anda temukan dengan sysctl -a | grep mem( hw.memsize = 4294967296pada mesin saya).

vm_statmenampilkan informasi yang sama seperti Activity Monitor.apphalnya, Anda hanya perlu mengalikan nilai yang Anda inginkan dengan ukuran halaman. Keduanya disediakan dalam output.


vm_stat: halaman membebaskan: 12054 .. 12054 * 4096/1024/1024 = 47,08 dan memantau kegiatan acara: 103 MB grab.by/6KSD VM_stats keluaran: pastebin.com/BJcxPswv Mengapa saya mendapatkan nilai-nilai yang salah?
— kesrut

1
Tambahkan Pages speculativeke yang gratis. Anda mungkin telah memperhatikan bahwa free + active + inactive + wired down tidak menambah ukuran total yang ditampilkan di Activity Monitor.
— Daniel Beck

3
yang greptampaknya tidak diperlukan - di MacBook Pro saya, sysctl hw.memsizejuga bekerja dan cetakanhw.memsize: 8589934592
— ssc

3
top -l 1 | grep PhysMem: | awk '{print $10}'

top -l 1berjalan topdalam mode pencatatan (mis. keluaran file, bukan tampilan / keluaran terminal) untuk satu iterasi, lalu berhenti. The grep/ awkfilter untuk nilai memori bebas di topoutput.


YMMV. Di Sierra, top -l 1 | grep PhysMem:beri aku PhysMem: 9674M used (1752M wired), 6701M unused.jadi aku gunakan top -l 1 | grep PhysMem: | awk '{print $6}'. Terima kasih!
— pyb

1

Mengapa tidak menggunakan topperintah untuk melihat penggunaan memori Anda secara realtime?

MEMPERBARUI:

Anda dapat menggunakan perintah berikut:

sysctl -a | grep hw.usermem
sysctl -a | grep hw.physmem

Untuk tipe daftar lengkap man sysctl di terminal.


Mungkin untuk digunakan dalam naskah.
— Daniel Beck

2
Keduanya usermemdan physmemmenampilkan nilai yang tidak berguna untuk sistem dengan RAM lebih dari 2GB. Keduanya mungkin dibatasi oleh integer 32 bit yang sudah ditandatangani.
— Daniel Beck

Mungkin saya bisa menggunakan top untuk mendapatkan output tunggal. Setelah saya mendapatkan output saya akan mem-parsing nilai yang dibutuhkan.
— kesrut

Penggunaan yang tidak berguna grep... sysctl hw.memsize= total sysctl hw.physmem,,sysctl hw.usermem
— TrinitronX

@DanielBeck benar, hw.memsizeadalah apa yang mungkin Anda inginkan secara total. Lihat komentar saya di sini untuk info lebih lanjut
— TrinitronX

1

mac os x / linux

$ sysctl -a | grep '^hw\.m'
hw.memsize: 8589934592

Ini terlihat seperti perubahan kecil terhadap jawaban yang ada. Mungkin lebih tepat sebagai komentar.
— fixer1234

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.