sách gpt4 ai đã đi

linux - 如何找到密码为空的 "real user"帐号?

In lại 作者:太空宇宙 更新时间:2023-11-04 12:32:25 27 4
mua khóa gpt4 Nike

希望扩大提问的范围đây ,关于查找密码为空的用户。我想要的是过滤掉该行的系统帐户

sudo getent shadow | grep '^[^:]*:.\?:' | cut -d: -f1

当我运行它时打印出来。

我的问题是我希望能够只显示由脚本或通过终端在我的系统中添加的密码为空的用户帐户,也就是“真实”的人,以及我创建的帐户我自己。

深度:

Hiện naychuyện gì xảy ra:

~$ sudo useradd bob

~$ sudo getent shadow | grep '^[^:]*:.\?:' | cut -d: -f1
Sudo password for user: [pw]
daemon
thùng rác
hệ thống
[...]
rtkit
saned
usbmux
bob
~$

Là gì想要的:

~$ sudo useradd bob

~$ sudo [getent command for the problem]
Sudo password for user: [pw]
bob
~$

换句话说,当我在没有密码的情况下添加 Bob 时,我希望只能看到他。

这可能措辞不当,所以请要求进一步说明。

这样做的目的是找到所有具有上述属性的用户并将其删除。因此,我不想删除系统创建的帐户。


更新 1:更正了拼写错误。


更新 2: 我发现我可以通过 ID 过滤掉所有用户,这是 getent 收到的第三个字段。

因此,通过管道运行 2 grep,如下所示:

sudo getent shadow | grep '^[^:]*:.\?:' | grep (regex) | cut -d: -f1

将完成工作。

现在,我知道我应该使用的正则表达式是 '.:.:[^(17212)]:.:.:.:.:.:.',但它只是不会带回任何匹配项。

有人可以建议任何替代方案吗?


我使用的是 Ubuntu 16.04。

感谢您的帮助。


1 Câu trả lời

用户帐号id从1000开始,低id属于系统帐号,所以需要过滤掉-id是输出的第三个字段

> getent passwd

关于linux - 如何找到密码为空的 "real user"帐号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42953248/

27 4 0
太空宇宙
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com