【查看linux中所有用户的三种方式】

2023-11-11

查看linux中所有用户的三种方式学习目标:

提示:通过使用 /etc/passwd 文件,getent 命令,compgen 命令这三种方法查看系统中用户的信息

用户信息存放位置:

提示:Linux 系统中用户信息存放在 /etc/passwd 文件中

这是一个包含每个用户基本信息的文本文件。当我们在系统中创建一个用户,新用户的详细信息就会被添加到这个文件中。

/etc/passwd 文件将每个用户的基本信息记录为文件中的一行,一行中包含 7 个字段。

/etc/passwd 文件的一行代表一个单独的用户。该文件将用户的信息分为 3 个部分。

  • 第 1 部分:root 用户信息
  • 第 2 部分:系统定义的账号信息
  • 第 3 部分:真实用户的账户信息
    第一部分是 root 账户,这代表管理员账户,对系统的每个方面都有完全的权力。

第二部分是系统定义的群组和账户,这些群组和账号是正确安装和更新系统软件所必需的。

第三部分在最后,代表一个使用系统的真实用户。

在创建新用户时,将修改以下 4 个文件。

  • /etc/passwd: 用户账户的详细信息在此文件中更新。
  • /etc/shadow: 用户账户密码在此文件中更新。
  • /etc/group: 新用户群组的详细信息在此文件中更新。
  • /etc/gshadow: 新用户群组密码在此文件中更新。

使用 /etc/passwd 文件

使用任何一个像 cat、more、less 等文件操作命令来打印 Linux 系统上创建的用户列表。

/etc/passwd 是一个文本文件,其中包含了登录 Linux 系统所必需的每个用户的信息。它保存用户的有用信息,如用户名、密码、用户 ID、群组 ID、用户 ID 信息、用户的家目录和 Shell 。

/etc/passwd 文件将每个用户的详细信息写为一行,其中包含七个字段,每个字段之间用冒号 : 分隔:

# cat /etc/passwd

7 个字段的详细信息如下。

  • 用户名 (magesh): 已创建用户的用户名,字符长度 1 个到 12 个字符。

  • 密码(x):代表加密密码保存在 /etc/shadow 文件中。

  • 用户 ID(506):代表用户的 ID 号,每个用户都要有一个唯一的 ID 。UID 号为 0 的是为 root 用户保留的,UID 号 1 到 99 是为系统用户保留的,UID 号 100-999 是为系统账户和群组保留的。

  • 群组 ID (507):代表群组的 ID 号,每个群组都要有一个唯一的 GID ,保存在 /etc/group文件中。

  • 用户信息(2g Admin - Magesh M):代表描述字段,可以用来描述用户的信息(LCTT 译注:此处原文疑有误)。

  • 家目录(/home/mageshm):代表用户的家目录。

  • Shell(/bin/bash):代表用户使用的 shell 类型。
    你可以使用 awkcut 命令仅打印出 Linux 系统中所有用户的用户名列表。显示的结果是相同的。

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

  • cut -d: -f1 /etc/passwd


使用 getent 命令:

getent 命令显示 Name Service Switch 库支持的数据库中的条目。这些库的配置文件为 /etc/nsswitch.conf

getent 命令显示类似于/etc/passwd文件的用户详细信息,它将每个用户详细信息显示为包含七个字段的单行。`

# getent passwd
  • 7 个字段的详细信息如上所述。(LCTT 译注:此处内容重复,删节)

你同样可以使用 awkcut 命令仅打印出 Linux 系统中所有用户的用户名列表。显示的结果是相同的。

使用 compgen 命令

compgen 是 bash 的内置命令,它将显示所有可用的命令,别名和函数。

# compgen -u
root
bin
daemon
adm
lp
sync
shutdown
halt
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【查看linux中所有用户的三种方式】 的相关文章

随机推荐

  • Kaplan-Meier生存曲线绘制

    Kaplan Meier生存曲线绘制 生存分析研究的是某个事件发生之前过去的时间 在临床研究中最常见的应用就是死亡率的估计 预测患者的生存时间 不过生存分析也可以应用于其他领域如机械故障时间等 在R中 survival包中有很多函数可以对生
  • 定根最小树形图 朱刘算法 luogu P4716

    https www luogu org problem P4716 include
  • python混淆矩阵实证分析_如何在Python中编写混淆矩阵?

    I wrote a confusion matrix calculation code in Python def conf mat prob arr input arr confusion matrix conf arr 0 0 0 0
  • Google Colab 读取/存储 云盘内的文件

    背景 Google Colaboratory是谷歌开放的一款研究工具 主要用于机器学习的开发和研究 这款工具让广大的AI开发者可以使用免费的GPU 在训练模型时 使用GPU自然速度飞快 那么训练完之后最重要的自然就是将训练出来的模板数据保存
  • 华为再发新版鸿蒙OS系统!新增超级终端功能:可媲美iOS系统

    此文章转自乐字节 一生万物 万物归一 这不是哪部武侠小说的招式 也不是哪部哲学作品的思想 它是华为鸿蒙系统的设计理念 化简为繁 精妙绝伦 相信大家都知道 自从华为推送了鸿蒙OS手机Bate版本系统以后 不少参与鸿蒙系统内测用户便纷纷反馈 在
  • XCTF:NewsCenter

    题目如下 因为有输入框 我习惯初步判断它为sql注入 1 测试是否存在注入点 输入 1 结果报错了 然后尝试 1 2 知道存在注入 且为字符型注入 然后进行字段数猜测 直到字段数为4开始报错 3 尝试获得显示位 4 查库名 5 查表名 6
  • Python计算出给定的时间段的具体日期列表-大全

    由于工作中经常用到关于用户自定义时间 来进行后台数据的查询 特意整理了一下工作中常用的到的关于时间列表的一个函数 可以计算出某一年中的具体哪个周的开始和结束日期 某个周的具体日期列表 2015年38周 自定义时间段的具体日期列表 20150
  • 华为OD机试真题-找出两个整数数组中同时出现的整数-2023年OD统一考试(B卷)

    题目描述 现有两个整数数组 需要你找出两个数组中同时出现的整数 并按照如下要求输出 1 有同时出现的整数时 先按照同时出现次数 整数在两个数组中都出现并且出现次数较少的那个 进行归类 然后按照出现次数从小到大依次按行输出 2 没有同时出现的
  • 基于人工大猩猩部队优化CNN-LSTM(GTO-CNN-LSTM)多变量时间序列预测(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码实现 1 概述 专家学者根据对人类视觉的研究 提出了注意力
  • win7虚拟图形服务器,ZNetCManager win7版

    ZNetCManager是一款虚拟串口服务器软件 它可以在你的电脑上构建出多个虚拟串口 不过功能和真实串口是一样的 你可以通过软件将数据传输到局域网内其他的串口设备上 让您即便是没有串口 也能对串口进行通信 ZNetCManager功能介绍
  • termius设置中文 v7.0.1附使用教程

    提起Windows平台远程终端 XShell的大名想必不用多说了 但它也只有Windows版本 携带非常不方便 为此小编今日要推荐的是termius全平台的远程终端 该软件不仅涵盖了Windows Linux OSX 还支持Android和
  • 几种存segmentation mask方法对比

    发现同一幅图的原图 jpg 1920 1080 1920 times 1080 1920 1080 才 155K 其用 npy 存的 segmentation mask 居然有 2M 按理 segmentation mask 只有一个通道
  • 安装npm后,nrm ls 报错internal/validators.js:124 throw new ERR_INVALID_ARG_TYPE(name, ‘string‘, value)

    报错截图 1 首先检查node js是否安装成功 输入 node v 若可查看版本号 如图所示即安装成功 若不一致则重新安装node js node js官方下载地址 https nodejs org en download 2 查看npm
  • Selector和Epoll区别

    Selector和Epoll区别 select原理 原理还是轮询所有文件描述符 将文件描述符集合fd set从用户空间拷贝到内核空间 进入内核态 遍历所有文件描述符 对每个文件描述符调用poll 该函数返回一组标准的掩码 其各个位指示相应的
  • Python爬虫之Js逆向案例(16)- xx商品评论&店铺详情案例

    一次运行程序 同时获取一下内容 1 获取商店详情 2 获取当前商品评论 3 获取商品的问题 答案 效果如下图 下面会进行以下几步进行分析 下方演示过程全部使用chrome浏览器 1 抓包找到对应接口 商店详情https item soa j
  • 后端Windows软件环境安装配置大全[JDK、Redis、RedisDesktopManager、Mysql、navicat、VMWare、finalshell、MongoDB...持续更新中]

    文章目录 前言 1 安装 JDK 2 安装 Redis 3 安装 RedisDesktopManager Redis可视化工具 4 安装 Mysql 5 安装 navicat Mysql可视化工具 6 安装 VMWare 7 安装 fina
  • Qt-多层嵌套界面类对象之间信号连接的一种方法-信号中转类

    项目中存在多个界面类对象 并且存在比较深的嵌套关系 这时候如果希望连接顶层的对象信号到底层的对象槽 一种方法是逐级连接信号 但是这种方法要写很多个connect函数 并且对不熟悉此代码的人来说 需要一层一层跟进才知道这个信号最终由哪个槽函数
  • 【Python】字符转换为 ASCII 码

    ord 函数将单个字符转换为 ASCII 码 chr相反 print ord A ord b print list map ord a z c print list map chr 97 122 99 输出结果 65 98 97 122 9
  • javascript实现经典排序

    排序是我们生活中经常面对的问题 做操时需要从小到大排序 我们逛电商网站 常常按价格排序 像这样我们把多个序列按照关键词递增 递减 的方式进行排列 使得序列成为一个按关键字有序的序列 这样的操作就称为排序 1 冒泡排序 冒泡排序是一种交换排序
  • 【查看linux中所有用户的三种方式】

    查看linux中所有用户的三种方式学习目标 提示 通过使用 etc passwd 文件 getent 命令 compgen 命令这三种方法查看系统中用户的信息 用户信息存放位置 提示 Linux 系统中用户信息存放在 etc passwd