Как узнать, заблокирован ли определенная учетная запись пользователя на Linux

getent shadow | while IFS=: read a b c; do grep -q '!' <<< "$b" && echo "$a LOCKED" || echo "$a not locked"; done


Команда getent shadow получает информацию о пользователях, хранящуюся в файле /etc/shadow. Далее, команда использует конвейер (|) для передачи этой информации в цикл while.

Цикл while использует переменные a, b, и c, которые получают значения, разделенные символом :, из каждой строки вывода команды getent shadow.

Команда grep -q '!' <<< "$b" проверяет, содержит ли значение переменной $b символ !.

Если символ ! есть в значении переменной $b, то выводится сообщение "$a LOCKED", указывающее, что учетная запись $a заблокирована.

Если символ ! отсутствует в значении переменной $b, то выводится сообщение "$a not locked", указывающее, что учетная запись $a не заблокирована.

Эта команда полезна для проверки, заблокирована ли определенная учетная запись пользователя в системе Linux. Альтернативным способом может быть использование инструментов управления пользователями, таких как passwd -S или chage -l. Аргументом команды является символ ! после которого следует переменная $b.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *