Câu trả lời:
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 users
hoặc who
:
users # or
who
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 -l
sẽ 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 đề đó).
Bạn có thể chỉ đơn giản là cat
các /etc/passwd
tậ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
who
và finger
sẽ 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ọ.
Những công việc này:
sed 's/:.*//g' /etc/passwd
/etc/passwd
sẽ giúp bạn