从 /etc/passwd 中删除用户条目

use*_*186 1 linux sed

我正在尝试创建一个sed语句来删除ftp我们在 Redhat 5/6 服务器上不需要的其他用户。我正在尝试创建一个sed模式,以便我可以找到例如ftp并删除整行。以下是我所拥有的,但它不起作用:

sed '/ftp/d'  /etc/passwd
Run Code Online (Sandbox Code Playgroud)

Jos*_* R. 5

正如Christopher 的评论中所暗示的那样,从系统中删除用户的条目/etc/passwd并不会删除该用户的所有痕迹。你最好做这样的事情:

userdel ftp
Run Code Online (Sandbox Code Playgroud)

或者

for user in <list of users>;do
    userdel $user
done
Run Code Online (Sandbox Code Playgroud)

您还可以提供-r开关(如 中所示userdel -r bob)以删除用户主目录的内容。但是,请小心,如果您要删除系统用户,这将是一个糟糕的主意,因为这些用户通常拥有居住在/etc和下的房屋/var/lib