Ответы:
Список всех пользователей с /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
Больше информации здесь
Вы можете легко найти это, просто используя 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
getent passwd
вместо / etc / passwd, так как последний не будет включать пользователей ldap
ldap
), я перешел на текущий… во всяком случае, отредактированный :)