Perintah satu baris untuk mencari semua pengguna sebenar dalam Linux

WBOY
Lepaskan: 2024-02-18 17:50:02
ke hadapan
765 orang telah melayarinya

一行命令找出 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
Salin selepas log masuk

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

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

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

[root@localhost ~]# getent group user1
user1:x:1000:
Salin selepas log masuk

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

方法一:

getent passwd | awk -F: '$3 >= 1000 && $3 < 65344 || $3 == 0 {print $1}&#039;
Salin selepas log masuk

(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}'
Salin selepas log masuk
  • 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 的用户信息。

Atas ialah kandungan terperinci Perintah satu baris untuk mencari semua pengguna sebenar dalam Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:mryunwei.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan