📜  列出所有用户 ubuntu 服务器 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:07:10.626000             🧑  作者: Mango

列出所有用户 Ubuntu 服务器 - Shell/Bash

在 Ubuntu 服务器中,我们经常需要列出当前所有的用户。这对于系统管理员来说尤其重要,因为他们需要知道当前有哪些用户正在使用该服务器,并且需要将其视为目标用户。

以下是列出所有用户的 Shell/Bash 命令:

cut -d: -f1 /etc/passwd

这个命令将读取 /etc/passwd 文件中的所有条目,并使用 : 符号作为分隔符进行分割。然后,它将输出每个条目的第一个字段,也就是用户名。这将包括所有类型的账户,包括超级用户 root

如果您只想显示正常的用户,则可以使用以下命令:

cut -d: -f1 /etc/passwd | grep -vE '^($|\s*(#|nologin))'

这个命令将使用 grep -vE 过滤掉空行和以 # 符号开头的行,同时过滤掉包含 nologin 的行,这些行是特殊的无登录权限账户。然后,它将输出所有正常用户的用户名。

除了使用 cutgrep 命令,您也可以使用 awk 命令来输出用户名:

awk -F: '{ print $1 }' /etc/passwd

这个命令将读取 /etc/passwd 文件,并使用 : 符号作为分隔符进行分割。然后,它将输出每个条目的第一个字段,也就是用户名。这将包括所有类型的账户,包括超级用户 root

总的来说,列出所有用户在 Ubuntu 服务器管理中是必须的,无论是安全方面还是日常维护方面都很重要。以上三个 Shell/Bash 命令是列出用户的最常用方法。