Có vẻ như hiện tại không có cách nào để làm điều này như bạn yêu cầu với các chương trình thiết bị đầu cuối. Những gì bạn yêu cầu không phải là mới và thực sự nằm trong htop
danh sách yêu cầu tính năng, nhưng nó đã diễn ra trong một năm rưỡi và chưa có cột mốc nào được thiết lập để thực hiện điều này. Không có dấu hiệu nào cả top
. 2 tùy chọn có thể là:
1) Hai thiết bị đầu cuối
Bạn có thể nói với top (ví dụ: bạn có thể sử dụng f
khi nó chạy) để hiển thị UID không phải tên. Nếu bạn đã chia thiết bị đầu cuối của mình thành 2 trường như với terminator
hoặc screen
sau đó bạn có thể chạy đầu trong màn hình lớn hơn phía trên và truy vấn tên người dùng ở phía dưới, ví dụ:
awk -v val=1000 -F ":" '$3==val{print $1}' /etc/passwd
thay thế bất cứ UID nào bạn muốn tìm kiếm 1000. Tất nhiên, bạn có thể gói nó trong một tập lệnh bash rất nhỏ để bạn chỉ nên nhập một vài chữ cái của tên tập lệnh và UID. Ngoài ra nếu bạn đang nói về người dùng không phải là người dùng cục bộ, bạn có thể sử dụng getent passwd
làm đầu vào cho awk thay vì tệp / etc / passwd - như vậy:
getent passwd | awk -v val=1000 -F ":" '$3==val{print $1}'
2) tùy chọn ps
Bạn có thể sử dụng ps để cung cấp cho bạn 15 quy trình nặng nhất của CPU và chúng thuộc về ai. Bạn có thể thay đổi số lượng các quá trình của khóa học.
ps -ef | egrep -v "STIME|$LOGNAME" | sort -k4 -r | head -n 15 | colrm 100
Giải trình:
ps -ef gives you all processes
egrep -v "STIME|$LOGNAME" removes the header line
sort -k4 -r sorts by the CPU column in reverse (biggest on top)
head -n 15 gives you first 15 lines of above
colrm 100 restricts each line of output to 100 characters
Lệnh cuối cùng hữu ích vì một số chương trình sch như google chrome có các dòng tùy chọn rất dài sau lệnh, vì vậy đầu ra của bạn sẽ khó đọc nếu bạn không cắt các dòng.
uname -a