📜  列出所有用户 linux - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:50:13.148000             🧑  作者: Mango

列出所有用户

在 Linux Shell 中,我们可以通过 cut 命令和 /etc/passwd 文件来列出所有用户信息。具体方法如下:

cut -d: -f1 /etc/passwd

上述命令中,-d 参数指定了字段分隔符为 :-f1 参数表示只取出第一列(即用户名),最后指定文件路径即可。

如果需要将输出保存到文件中,可以使用重定向符 >,例如:

cut -d: -f1 /etc/passwd > users.txt

这样就会将所有用户的用户名输出到 users.txt 文件中。

除了 cut 命令之外,我们也可以使用 awk 命令来实现同样的功能。具体命令如下:

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

上述命令中,-F 参数指定了字段分隔符为 :{print $1} 表示打印第一列(即用户名),最后指定文件路径即可。

同样地,如果需要将输出保存到文件中,可以使用重定向符 >,例如:

awk -F: '{print $1}' /etc/passwd > users.txt

除此之外,我们也可以使用 grep 命令来过滤出包含 /bin/bash 的行,从而列出所有使用 Bash 作为默认 Shell 的用户。具体命令如下:

grep /bin/bash /etc/passwd | cut -d: -f1

上述命令中,grep 命令用于过滤出包含 /bin/bash 的行,然后使用 cut 命令取出第一列(即用户名),最后输出即可。

同样地,如果需要将输出保存到文件中,可以使用重定向符 >,例如:

grep /bin/bash /etc/passwd | cut -d: -f1 > users.txt

总之,这些命令都可以很方便地列出所有用户的用户名,我们可以根据自己的需要选择合适的命令。