Я новичок в Linux, если быть точным, это первый день, когда я сижу перед ОС Ubuntu. Я добавил пользователей в учебных целях, и теперь я хочу видеть всех пользователей в системе. Как мне увидеть пользователей? Если есть больше одного способа, пожалуйста, дайте мне знать все.
решение1
Безотказный способ
Они перечислены в /etc/passwd
. Однако это будет включать пользователей "системы". Как правило, "обычные" пользователи начинаются с UID 1000, поэтому вы можете отфильтровать их с помощью.
awk -F ':' '$3>999' /etc/passwd
Обратите внимание, что у меня также есть пользователь под именем «nobody» с UID 65534, поэтому возможны некоторые ложные срабатывания.
Объяснение кода
awk -F ':'
используйтеawk
с разделителем полей:
.'$3>999'
печатать строку только в том случае, если третье поле больше 999./etc/passwd
прочитано из этого файла.
Более простой способ
У большинства пользователей есть каталог в домашнем каталоге. Примечание: это может не сработать, если у пользователя нет этого каталога.
ls /home
(Кроме того, игнорируйте, lost+found
если он существует, поскольку он не связан с пользователем.)
решение2
getent passwd
Преимущество этого метода заключается в том, что в него включаются как пользователи, определенные в данной системе (т. е. перечисленные в /etc/passwd
), так и пользователи, которые могут быть добавлены с помощью метода единого входа, например пользователи LDAP.
Если вы хотите видеть только несистемных пользователей:
getent passwd | awk -F ':' '$3>999' | grep -v nobody