Tôi có thể xem số liệu thống kê hệ thống trong Terminal không?


34

Tiện ích iStat Pro cho phép theo dõi các số liệu thống kê hệ thống khác nhau như

  • Sử dụng CPU
  • băng thông mạng vào / ra
  • sử dụng bộ nhớ
  • ...

Làm cách nào tôi có thể xem số liệu thống kê hệ thống như vậy trong Terminal?

nhập mô tả hình ảnh ở đây

Câu trả lời:


56

Tùy thuộc vào những gì bạn muốn xem, có một số tùy chọn ở cấp Terminal:

  • top: hiển thị các tiến trình đang chạy, sử dụng bộ nhớ và các số liệu thống kê tương tự
  • iostat: hiển thị I / O trên mỗi thiết bị đầu cuối, thống kê thiết bị và SPU
  • vm_stat: hiển thị thống kê bộ nhớ ảo Mach
  • dfdiskutil list: báo cáo về dung lượng ổ đĩa được sử dụng và miễn phí
  • fs_usage: hiển thị hoạt động tệp cho cả đĩa và mạng
  • nettop: hiển thị thông tin cập nhật về mạng (hơi giống top trên cho I / O ròng)
  • w: hiển thị ai đã đăng nhập, những gì họ đang làm và tải hệ thống
  • ifconfigipconfig: chi tiết giao diện mạng và giao thức IP

Hầu hết các lệnh này có một danh sách lớn các tùy chọn, có lẽ tốt nhất nên tham khảo các trang hướng dẫn để biết chi tiết.

Tôi thường dựa vào top -u -s 10để xác định các quy trình ăn cắp CPU và fs_usage -f filesys/ fs_usage -f networkđể xác định các quy trình tạo ra nhiều tải đĩa / mạng.


@ JMY1000 LOL, tôi thực sự thích ý tưởng về một quá trình ôm CPU :-) Cảm ơn bạn đã chỉnh sửa.
nohillside

@patrix Ah, cái ôm tử thần tốt.
JMY1000


4

Bạn có thể sử dụng top. Nó sẽ hiển thị việc sử dụng CPU và RAM cùng với tất cả các quy trình. Nó cũng sẽ hiển thị cho bạn các gói mạng vào / ra và dữ liệu đĩa đọc / ghi.


2
Và với man topbạn có thể xem làm thế nào để tùy chỉnh đầu ra.
Rene Larsen

3

Trên đây là những mệnh lệnh tuyệt vời. Ngoài ra, tôi thích sử dụng

$ du -ks *

Để hiển thị bao nhiêu dung lượng đĩa, tất cả các thư mục bên dưới thư mục hiện tại của tôi đang sử dụng.

Lệnh này liệt kê 10 thư mục hàng đầu theo thứ tự kích thước:

$ du -sh * | sort -nr | head -10

Đối với một công cụ thống kê hệ thống tổng thể, tôi thích con trăn liếc nhìn tốt hơn so với đầu:

https://nicolargo.github.io/glances/

Đây là cách bạn có thể cài đặt nó trên Debian / Ubuntu:

$ sudo apt-get install glances

Đây là cách bạn có thể cài đặt nó trên CentOS / Red Hat:

# yum  install glances

1

Nếu bạn đang gặp vấn đề về mạng, đặc biệt là với một máy chủ tiếp xúc với Internet, lsof (1) có thể cực kỳ hữu ích. Nó liệt kê tất cả các tập tin đang mở.

Ví dụ: lsof | fgrep '/Library/WebServer/sẽ hiển thị cho bạn tất cả các tệp đang mở trên máy chủ web của bạn. Tôi đã sử dụng điều này rất nhiều để tìm và cấm "con đỉa" và "bot", những người đang giảm băng thông của tôi bằng cách tự động hút tập tin sau khi tập tin.


1

Cách ưa thích của tôi để xem việc sử dụng CPU với một lệnh duy nhất trả về ngay lập tức là

ps -axro pcpu | awk '{sum+=$1} END {print sum}'

-ax: tất cả các quy trình, bao gồm các quy trình không đầu cuối và các quy trình bạn không sở hữu.

-r: sắp xếp theo cách sử dụng cpu

-o pcpu: chỉ xuất trường% cpu. % cpu là trung bình 1 phút của quy trình, nhưng sẽ chỉ trung bình trong suốt vòng đời của quy trình nếu thời gian tồn tại của nó là <1 phút.

awk: tính tổng cột đầu tiên trong mỗi dòng và in tổng ở cuối.

Đây là số liệu CPU cho mỗi lõi, vì vậy trên CPU 12 lõi, bạn có thể nhận được tới 1200; bạn không giới hạn ở mức 100.


0

Đây là hai lệnh để xác định IP cục bộ và IP công cộng của bạn:

IP cục bộ

ipconfig getifaddr en1

Đây là khi sử dụng Wi-Fi. Để sử dụng ethernet en0.

IP công cộng

curl whatismyip.org

1
Trên MacBook Air hiện tại (không có cổng ethernet), mã thiết bị Wi-Fi là en0. Bạn có thể tìm hiểu những gì nó được với networksetup -listallhardwareports | grep -E '(Wi-Fi|AirPort)' -A 1 | grep -o "en.".
Lri
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.