怎么查看linux当前用户名,技术|6 个简单的方式来查看 Linux 中的用户名和其它信息...

news/2024/7/7 13:00:28

这是一个非常基础的话题,在 Linux 中,每个人都知道如何使用 id 来查找用户信息。一些用户也从 /etc/passwd 文件中过滤用户信息。

我们还使用其它命令来获取用户信息。

你可能会问,为什么要讨论这个基础话题呢?即使我也这么认为,因为除了这两个之外没有更好的方法了,但是我们也有一些不错的选择。

与这两者相比,那些命令提供了更详细的信息,这对于新手非常有帮助。

这是帮助管理员在 Linux 中查找用户信息的基本命令之一。Linux 中的一切都是文件,甚至用户信息都存储在一个文件中。

建议阅读:

所有用户都被添加在 /etc/passwd 文件中,这里保留了用户名和其它相关详细信息。在 Linux 中创建用户时,用户详细信息将存储在 /etc/passwd 文件中。passwd 文件将每个用户详细信息保存为一行,包含 7 字段。

我们可以使用以下 6 种方法来查看用户信息。

id:为指定的用户名打印用户和组信息。

getent:从 Name Service Switch 库中获取条目。

/etc/passwd: 文件包含每个用户的详细信息,每个用户详情是一行,包含 7 个字段。

finger:用户信息查询程序

lslogins:显示系统中已有用户的信息

compgen:是 bash 内置命令,它将显示用户的所有可用命令。

1) 使用 id 命令

id 代表身份identity。它输出真实有效的用户和组 ID。也可以输出指定用户或当前用户的用户和组信息。

# id daygeek

uid=1000(daygeek) gid=1000(daygeek) groups=1000(daygeek),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),118(lpadmin),128(sambashare)

下面是上述输出的详细信息:

uid (1000/daygeek): 它显示用户 ID 和用户名

gid (1000/daygeek): 它显示用户的组 ID 和名称

groups: 它显示用户的附加组 ID 和名称

2) 使用 getent 命令

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

getent 命令会显示类似于 /etc/passwd 文件的用户详情,它将每个用户的详细信息放在一行,包含 7 个字段。

# getent passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

sync:x:5:0:sync:/sbin:/bin/sync

shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

halt:x:7:0:halt:/sbin:/sbin/halt

mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin

operator:x:11:0:operator:/root:/sbin/nologin

games:x:12:100:games:/usr/games:/sbin/nologin

gopher:x:13:30:gopher:/var/gopher:/sbin/nologin

magesh:x:502:503:2g Admin - Magesh M:/home/magesh:/bin/bash

thanu:x:503:504:2g Editor - Thanisha M:/home/thanu:/bin/bash

sudha:x:504:505:2g Editor - Sudha M:/home/sudha:/bin/bash

下面是关于 7 个字段的详细信息:

magesh:x:502:503:2g Admin - Magesh M:/home/magesh:/bin/bash

Username (magesh): 已创建的用户名。字符长度应该在 1 到 32 之间。

Password (x): 它表明加密密码存储在 /etc/shadow 文件中。

User ID (UID-502): 它表示用户 ID(UID),每个用户应包含唯一的 UID。UID (0-Zero) 保留给 root,UID(1-99)是为系统用户保留的,UID(100-999)是为系统账户/组保留的。

Group ID (GID-503): 它表示组 ID(GID),每个组应该包含唯一的 GID,它存储在 /etc/group 文件中。

User ID Info (2g Admin - Magesh M): 它表示命令字段。这个字段可用于描述用户信息。

Home Directory (/home/magesh): 它表示用户家目录。

shell (/bin/bash): 它表示用户的 bash shell。

如果你只想在 getent 命令的输出中显示用户名,使用以下命令格式:

# getent passwd | cut -d: -f1

root

bin

daemon

adm

lp

sync

shutdown

halt

mail

uucp

operator

games

gopher

magesh

thanu

sudha

只显示用户的家目录,使用以下命令格式:

# getent passwd | grep '/home' | cut -d: -f1

centos

prakash

magesh

thanu

sudha

3) 使用 /etc/passwd 文件

/etc/passwd 是一个文本文件,它包含每个用户登录 Linux 系统所必需的的信息。它维护用户的有用信息,如用户名,密码,用户 ID,组 ID,用户 ID 信息,家目录和 shell。/etc/passwd 文件将每个用户详细信息放在一行中,包含 7 个字段,如下所示:

# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

sync:x:5:0:sync:/sbin:/bin/sync

shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

halt:x:7:0:halt:/sbin:/sbin/halt

mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin

operator:x:11:0:operator:/root:/sbin/nologin

games:x:12:100:games:/usr/games:/sbin/nologin

gopher:x:13:30:gopher:/var/gopher:/sbin/nologin

magesh:x:502:503:2g Admin - Magesh M:/home/magesh:/bin/bash

thanu:x:503:504:2g Editor - Thanisha M:/home/thanu:/bin/bash

sudha:x:504:505:2g Editor - Sudha M:/home/sudha:/bin/bash

以下是 7 个字段的详细信息。

magesh:x:502:503:2g Admin - Magesh M:/home/magesh:/bin/bash

字段信息同上。

如果你只想显示 /etc/passwd 文件中的用户名,使用以下格式:

# cut -d: -f1 /etc/passwd

root

bin

daemon

adm

lp

sync

shutdown

halt

mail

uucp

operator

games

gopher

magesh

thanu

sudha

只显示用户的家目录,使用以下格式:

# cat /etc/passwd | grep '/home' | cut -d: -f1

centos

prakash

magesh

thanu

sudha

4) 使用 finger 命令

finger 命令显示有关系统用户的信息。它显示用户的真实姓名,终端名称和写入状态(如果没有写入权限,那么最为终端名称后面的 *),空闲时间和登录时间。

# finger magesh

Login: magesh Name: 2g Admin - Magesh M

Directory: /home/magesh Shell: /bin/bash

Last login Tue Jul 17 22:46 (EDT) on pts/2 from 103.5.134.167

No mail.

No Plan.

以下是上述输出的详细信息:

Login: 用户名

Name: 附加/有关用户的其它信息

Directory: 用户家目录的信息

Shell: 用户的 shell 信息

LAST-LOGIN: 上次登录日期和其它信息

5) 使用 lslogins 命令

它显示系统已知用户的信息。默认情况下,它将列出系统中所有用户的信息。

lslogins 使用程序的灵感来自于 logins 实用程序,该实用程序最初出现在 FreeBSD 4.10 中。

# lslogins -u

UID USER PWD-LOCK PWD-DENY LAST-LOGIN GECOS

0 root 0 0 00:17:28 root

500 centos 0 1 Cloud User

501 prakash 0 0 Apr12/04:08 2018/04/12

502 magesh 0 0 Jul17/22:46 2g Admin - Magesh M

503 thanu 0 0 Jul18/00:40 2g Editor - Thanisha M

504 sudha 0 0 Jul18/01:18 2g Editor - Sudha M

以下是上述输出的详细信息:

UID: 用户 id

USER: 用户名

PWD-LOCK: 密码已设置,但是已锁定

PWD-DENY: 登录密码是否禁用

LAST-LOGIN: 上次登录日期

GECOS: 有关用户的其它信息

6) 使用 compgen 命令

compgen 是 bash 内置命令,它将显示所有可用的命令,别名和函数。(LCTT 译注:它的 -u 参数可以列出系统中用户。)

# compgen -u

root

bin

daemon

adm

lp

sync

shutdown

halt

mail

uucp

operator

games

gopher

magesh

thanu

sudha

本文由 LCTT 原创编译,Linux中国 荣誉推出 linisi.svg


http://www.niftyadmin.cn/n/2497453.html

相关文章

VBXML的增删改查

简介:XML的增删改查 开发过程中有许多后台操作XML的过程,每次需要操作时都是找很多代码来参考或者百度一下。今天决定补充下XML操作的知识,把XML操作的增删改查都写了一遍,供以后开发参考 查询: Public Sub Read()获取…

wk一sm5时间温度控制器_湿度控制器原理介绍 温湿度控制器分类【详解】

温湿度控制器是一种仪表,其采用的是先进的单片机作为控制的核心,并且使用的温湿度传感器是进口的性能良好的产品,能对湿度和温度同时进行检测和控制,并能启动风扇或是加热器,自动调节湿度和温度。温 湿度控制器原理是什…

springmvc json

pom.xml加入两个jar包 <dependency><groupId>org.codehaus.jackson</groupId><artifactId>jackson-core-lgpl</artifactId><version>1.8.1</version></dependency><dependency><groupId>org.codehaus.jackson<…

python怎么切换linux目录,Linux下切换python2和python3

为什么需要有两个版本的PythonPython2和Python3不兼容是每个接触过Python的开发者都知道的事&#xff0c;虽说Python3是未来&#xff0c;但是仍然有很多项目采用Python2开发。Linux的许多发行版本(如Ubuntu)都会自带Python2.7&#xff0c;但是当我们准备开发一个Python3项目的时…

搭建heartbeat高可用

1:准备阶段两台服务器一主一从我这里采用了yum的方式进行安装&#xff0c;如想使用rpm安装&#xff0c;请自行下载rpm包安装epel拓展源国外的速度是在是太慢&#xff0c;我这里选择了阿里的拓展源&#xff0c;PS 感谢马云。[roottudou ~]# rm -rf /etc/yum.repos.d/* [roottu…

临时对象

临时对象(无法作为左值&#xff0c;即对象类型为const类型)产生的时期&#xff1a; 1. 以值的方式给函数传参&#xff1b; 2. 类型转换&#xff1b; 3. 函数返回一个对象时&#xff1b; 使用&#xff1a; string foo(); void bar(string& s); bar(foo());      //编译…

jquery 上下触屏滑动_jQuery简单实现上下,左右滑动的方法

本文实例讲述了jQuery简单实现上下,左右滑动的方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;渐变移动出足够的空白 -> 淡出最后一个 ->渐变移动出足够的空白我们要做的是向左移动效果.这个效果用时需添加一个DIV设置超出部分不显示,这样就可以用了.闲话不…

linux 允许用户ftp,在Unix或Linux上限制或允许某ftp用户登录

Unix 或Linux 是通过 配置文件 ftpusers 限制用户 ftp 连接服务器的。在该文件中的用户都不能通过ftp 登录服务器。每个被限制的用户名各占一行&#xff0c;该文件一般只能通过root用户维护。如果用户名包含在该文件中&#xff0c;那么这个用户使用ftp连接服务器时&#xff0c…