Список имен пользователей, которые на самом деле являются компьютерами в Debian
Я унаследовал около 6 серверов (все на основе Debian), и часть моего проекта на следующий год - объединить все в один сервер. Из установок Samba3 запущено 6 "доменов", и я хотел бы объединить их все в один новый сервер, как только я разберусь. Я хотел бы знать, есть ли способ загрузить /etc/passwd
файл, чтобы показать только имена пользователей, которые заканчиваются на $
Я знаю, что это компьютерное имя. Как только я получу это, я могу (надеюсь) создать скрипт, чтобы добавить все машины к новому мастеру, но об этом позже.
3 ответа
Решение
cat /etc/passwd | grep \$\: | cut -d : -f 1
будет моей первой попыткой.
Я думаю
grep -P '^[^:]+?\$:' /etc/passwd
Это самый лаконичный способ сделать это.
Изменить: Нашел более сжатый способ. Это не будет путать случайные "$:", которые существуют, например, в полях GECOS.
Вот как я это сделаю:
awk -F: '{print $1}' /etc/passwd | grep '\$$'