当前位置:

首页 > 软件教程 > 查找 Linux 系统中的所有真实用户

查找 Linux 系统中的所有真实用户

哈喽大家好,我是咸鱼。接触过Linux的小伙伴们都知道在Linux(或者说类Unix)中,有三种类型的用户:超级用户(UID为0):即root用户,拥有最高权限。系统用户(UID为1~999):系统内建用户,用于运行系统服务和守护进程。普通用户(UID为1000~60000):为了让使用者能够使用Linux系统资源而建立的,用户新建的账号一般就是普通账号。那么现在问题来了,如何快速找出Linux中的真实用户(root用户和普通用户)?正式开始之前,我们先介绍一个工具——getent。getent命令get

本文目录

    一行命令找出 Linux 中所有真实用户

    哈喽大家好,我是咸鱼。

    接触过 Linux 的小伙伴们都知道在 Linux (或者说类 Unix)中,有三种类型的用户:

    • 超级用户(UID 为 0):即 root 用户,拥有最高权限。
    • 系统用户(UID 为 1~999):系统内建用户,用于运行系统服务和守护进程。
    • 普通用户(UID 为 1000~60000):为了让使用者能够使用 Linux 系统资源而建立的,用户新建的账号一般就是普通账号。

    那么现在问题来了,如何快速找出 Linux 中的真实用户(root 用户和普通用户)?

    正式开始之前,我们先介绍一个工具——getent。

    getent 命令

    getent是"get entries"的缩写,主要用于检索系统数据库中的记录信息,如/etc/passwd、/etc/shadow、/etc/group、/etc/hosts等。它可以根据指定的数据库类型和键来查询特定条目。

    (1) 查看本地的主机文件(/etc/hosts)中包含的指定域名信息。

    [root@localhost ~]# getent hosts 127.0.0.1
    127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

    (2) 查看本地密码文件(/etc/passwd)中指定用户信息。

    [root@localhost ~]# getent passwd user1
    user1:x:1000:1000::/home/user1:/bin/bash

    (3) 从 /etc/group 数据库中检索指定组信息。

    [root@localhost ~]# getent group user1
    user1:x:1000:

    我们回到问题上来:如何快速找出 Linux 中的真实用户(root 用户和普通用户)?

    方法一:

    getent passwd | awk -F: '$3 >= 1000 && $3 < 65344 || $3 == 0 {print $1}'

    (1) getent passwd 用于检索 /etc/passwd 数据库中的所有用户信息

    (2) awk 命令:

    • -F::指定字段分隔符为冒号 (:)
    • $3 >= 1000 && $3 < 65344:表示判断第三个字段(用户 ID)大于或等于 1000 且小于 65344
    • $3 == 0:表示判断第三个字段(用户 ID)等于 0
    • {print $1}:打印第一个字段(用户名)

    总结一下:这条命令将检索 /etc/passwd 数据库中的所有用户信息,并打印出用户 ID 大于或等于 1000 且小于 65344,或者用户 ID 等于 0 的所有用户的用户名。

    但是有的小伙伴看到这么一长串的命令就犯难了,”我文本三剑客掌握的不是很好,这条命令尤其是里面的判断看的我头都晕了,还有没有更简单的方法呢?”

    方法二:

    getent passwd 0 {1000..60000} | awk -F: '{print $1}'
    • getent passwd 0 {1000..60000} 命令用于检索系统中用户 ID 为 0 以及范围从 1000 到 60000 的所有用户信息
    • awk -F: ‘{print $1}:表示对前面输出的内容进行处理——打印第一个字段

    这里补充一下:getent passwd 0 {1000..60000} 命令使用花括号扩展 ({1000..60000}) 来生成一个 0 和从 1000 到 60000 的数字序列。

    然后,getent passwd 命令使用这些数字作为参数,以检索系统中用户 ID 为 0 和从 1000 到 60000 的用户信息。

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    软件教程 Linux
    相关文章 更多
    linux删除用户与用户组的方法及命令教程
    linux删除用户与用户组的方法及命令教程

    掌握Linux中删除用户和用户组的正确方法,避免残留文件和进程冲突。本文深入解析userdel和groupdel命令的参数用法,提供处理“用户仍在使用”等常见错误的实战方案。

    Linux如何开启端口号?开放端口命令详解
    Linux如何开启端口号?开放端口命令详解

    详细讲解Linux如何开启端口号以及常用的开放端口命令。

    crossover卸载软件下载及重新安装教程
    crossover卸载软件下载及重新安装教程

    遇到CrossOver运行错误或需要更新版本时,如何彻底卸载旧版并干净重装?本教程详解macOS和Linux下的卸载步骤、残留文件清理方法及官方下载渠道,确保软件环境纯净稳定。

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。