Команда для отображения всех пользователей с их UID?

12

Как я могу перечислить всех пользователей вместе с их UID? Я хочу сделать это с терминала.

    
задан becko 06.07.2015 в 20:02
источник

4 ответа

12

Список всех пользователей с папкой /home :

awk -F: '/\/home/ {printf "%s:%s\n",$1,$3}' /etc/passwd

или всех пользователей с UID >= 1000 :

awk -F: '($3 >= 1000) {printf "%s:%s\n",$1,$3}' /etc/passwd

комбинация

awk -F: '/\/home/ && ($3 >= 1000) {printf "%s:%s\n",$1,$3}' /etc/passwd

или для всех записей

awk -F: '{printf "%s:%s\n",$1,$3}' /etc/passwd

Подробнее здесь

    
ответ дан A.B. 06.07.2015 в 20:21
источник
10

Вы можете легко найти это, просто используя cut :

cut -d: -f1,3 /etc/passwd
  • -d: устанавливает разделитель как : для cut

  • -f1,3 извлекает поле 1 и 3, разделенное только : из файла /etc/passwd

Проверьте man cut , чтобы получить больше информации.

Пример:

$ cut -d: -f1,3 /etc/passwd
root:0
daemon:1
bin:2
sys:3
sync:4
games:5
......

Если у вас установлено ldap , чтобы включить ldap пользователей в выход:

getent passwd | cut -d: -f1,3
    
ответ дан heemayl 06.07.2015 в 20:26
0

Поскольку вы пытаетесь перечислить UID и Username, команда ниже работает лучше всего на Solaris. Они имеют два awk

awk -F: '($ 3 > = 1000) {printf "% s:% s", $ 1, $ 3}' / etc / passwd

    
ответ дан Mr_Macc 13.05.2016 в 15:04
0

Я нахожу самый простой способ - иметь webmin на вашем сервере и просто перейти к System > Пользователи и группы, и там у вас есть хорошо отформатированный список со всеми именами пользователей и amp; группы с их uid, домашним каталогом и т. д.

    
ответ дан MitchellK 24.07.2016 в 08:24