Jawaban:
Ini adalah versi yang lebih pendek dan lebih tepat dari jawaban AndreKR:
sudo getent shadow | grep '^[^:]*:.\?:' | cut -d: -f1
Hanya memiliki satu panggilan ke cutdan akan menemukan entri dari salah satu formulir di bawah ini:
foo:!: ...
bar:*: ...
baz:: ...
Jika Anda hanya ingin benar-benar kosong:
sudo getent shadow | grep '^[^:]*::' | cut -d: -f1
Jika Anda memiliki GNU grep, Anda dapat menghilangkan cutsepenuhnya:
sudo getent shadow | grep -Po '^[^:]*(?=:.?:)'
atau
sudo getent shadow | grep -Po '^[^:]*(?=::)'
Entri mereka /etc/shadow/tidak memiliki password-hash di dalamnya. Anda harus masuk sebagai root untuk dapat melihatnya.
Apakah pengguna " pengguna " menggunakan kata sandi kosong?
getent shadow | grep 'user:\$' | cut -d':' -f 2 | grep '\w' -c -m 1
return 1 on fail - password tidak kosong
mengembalikan 0 pada berhasil - kata sandi ditetapkan
Semoga ini akurat