Список имен пользователей, которые на самом деле являются компьютерами в 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 '\$$'
Другие вопросы по тегам