Xem danh sách người dùng


24

Tôi muốn xem có bao nhiêu người dùng trên hệ thống của tôi. Làm cách nào tôi có thể xem danh sách tất cả người dùng trên hệ thống?


2
tôi nghĩ /etc/passwdsẽ giúp bạn
Зелный

5
Bạn có nghĩa là có bao nhiêu tài khoản người dùng trên hệ thống, hoặc có bao nhiêu người dùng hiện đang đăng nhập?
D_Bye

Câu trả lời:


28

Bạn có thể nhận được một danh sách tất cả người dùng với

getent passwd | cut -d':' -f1

Điều này chọn cột đầu tiên (tên người dùng) của cơ sở dữ liệu người dùng hệ thống. Ngược lại với phân tích giải pháp /etc/passwd, điều này sẽ hoạt động bất kể loại cơ sở dữ liệu được sử dụng (truyền thống /etc/passwd, LDAP, v.v.). Lưu ý rằng danh sách này cũng bao gồm người dùng hệ thống (ví dụ: không ai, thư, v.v.).

Số người dùng chính xác có thể được xác định như sau:

getent passwd | wc -l

Có thể lấy danh sách người dùng đang đăng nhập bằng lệnh usershoặc who:

users  # or
who

Tại sao không sử dụng getent passwdđể có được danh sách người dùng hiện tại, bao gồm cả người dùng được tìm thấy qua LDAP, v.v.? Ngoài ra, wc -lsẽ là một cách ngắn hơn nhiều để đếm các dòng trong /etc/passwd(hoặc đầu ra của getent passwd, cho vấn đề đó).
n.st

@ n.st Điều đó thực sự tốt hơn. Tôi bao gồm sự thay đổi trong câu trả lời của tôi. Cảm ơn.
Marco

Điều đó sẽ không nhất thiết phải liệt kê tất cả người dùng. Một số cơ sở dữ liệu người dùng có thể được thực hiện không đếm được
Stéphane Chazelas

3

Bạn có thể chỉ đơn giản là catcác /etc/passwdtập tin hoặc sử dụng,

awk -F':' '{ print $1}' /etc/passwd

Để cắt trường đầu tiên của cùng một tệp, nó sẽ liệt kê các tên bạn mong đợi. Ngoài ra, w whofingersẽ giúp bạn với tất cả những người đã đăng nhập từ vị trí / tty và chi tiết hoạt động của họ.


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.