Відповіді:
Це більш коротка та точна версія відповіді AndreKR:
sudo getent shadow | grep '^[^:]*:.\?:' | cut -d: -f1
Він має лише один дзвінок cutі знайде записи будь-якої із наведених нижче форм:
foo:!: ...
bar:*: ...
baz:: ...
Якщо ви хочете лише по-справжньому порожньо:
sudo getent shadow | grep '^[^:]*::' | cut -d: -f1
Якщо у вас є GNU grep, ви можете cutповністю усунути :
sudo getent shadow | grep -Po '^[^:]*(?=:.?:)'
або
sudo getent shadow | grep -Po '^[^:]*(?=::)'
Їхній запис /etc/shadow/не матиме пароля. Вам потрібно буде увійти як root, щоб мати можливість їх бачити.
Чи є у користувача " користувач " порожній пароль?
getent shadow | grep 'user:\$' | cut -d':' -f 2 | grep '\w' -c -m 1
return 1 on fail - пароль не порожній,
return 0 - успіх - встановлено пароль
Сподіваюся, це точно