HOME

getent 常用参数说明

getent 是一个非常强大的命令行工具,用于从本地数据库中检索信息。它可以替代多个使用 nslcd(Network Information Service Lightweight Daemon)的查询功能。通过 getent,你可以轻松地获取用户、组以及其他网络服务相关的数据。

基本语法

getent [选项] 数据库名 [键值]

常用参数说明

-h, --help

显示帮助信息并退出。

getent -h
# 或者
getent --help

-V, --version

显示版本信息并退出。

getent -V
# 或者
getent --version

-n, --numeric

用于从 hosts 数据库中获取 IP 地址对应的主机名。

getent hosts example.com

输出类似于:

192.0.2.1 example.com example

-r, --raw

以原始形式显示数据,对于某些数据库(如 services)非常有用。

getent services ssh

通常会输出类似:

ssh 7/tcp

-s, --search

按多个键值进行搜索。这对于从多模式数据库中获取信息特别有用。

getent group user1
# 可能返回空结果
getent -s nss db_group user1

-t, --type

指定查询的类型,类似于 nslcd 的配置文件中的定义。此选项通常与 -r-s 一起使用。

getent -t hosts example.com

实际应用示例

获取用户信息

获取用户名为 user1 的用户信息:

getent passwd user1

可能输出类似:

user1:x:1000:1000:User One:/home/user1:/bin/bash

查询主机名对应的 IP 地址

使用 -n 选项查询 example.com 的 IP 地址:

getent hosts example.com

输出可能类似于:

192.0.2.1 example.com example

使用多种数据库类型搜索

通过 -s 选项进行多模式搜索,获取用户信息:

getent -s nss dbpasswd user1

这些参数和用法展示了 getent 命令的强大功能及其在 Linux 系统管理中的应用。