Den*_*son 15
这是 AndreKR 答案的更短、更精确的版本:
sudo getent shadow | grep '^[^:]*:.\?:' | cut -d: -f1
Run Code Online (Sandbox Code Playgroud)
它只有一个调用cut
并会找到以下任何形式的条目:
foo:!: ...
bar:*: ...
baz:: ...
Run Code Online (Sandbox Code Playgroud)
如果你只想要真正的空:
sudo getent shadow | grep '^[^:]*::' | cut -d: -f1
Run Code Online (Sandbox Code Playgroud)
如果你有 GNU grep
,你可以cut
完全消除:
sudo getent shadow | grep -Po '^[^:]*(?=:.?:)'
Run Code Online (Sandbox Code Playgroud)
或者
sudo getent shadow | grep -Po '^[^:]*(?=::)'
Run Code Online (Sandbox Code Playgroud)
加密密码是 /etc/shadow 中的第二个字段。
如果第二个字段为空,则密码为空:
awk -F":" '($2 == "") {print $1}' /etc/shadow
Run Code Online (Sandbox Code Playgroud)
!
并且*
密码无效(用户无法登录):
awk -F":" '($2 == "!" || $2 == "*") {print $1}' /etc/shadow
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
19568 次 |
最近记录: |