文章目录
命令介绍
- 命令介绍
- 常用选项
- 参考示例
- 查看文件 /etc/protocols 中的所有记录
- 查看指定用户组是否存在,若不存在则创建指定的用户组
- 根据主机名称,查看对应的IP地址
- 根据域名查找对应的IP
- 根据用户名查找对应的UID
- 获取当前登陆用户的信息
- 根据UID查找用户名
- 查找那个服务在使用特定端口
- 查看指定名称的用户组信息
getent
命令用来查看系统的数据库中的相关记录。即使这些数据库不是在本地,比如 ldap 或者 nis 中的数据库,也可以使用 getent 查看。
支持的数据库: ahosts,ahostsv4 ,ahostsv6, aliases ,ethers ,group, gshadow, hosts, netgroup, networks, passwd, protocols, rpc ,services, shadow
常用选项 选项说明-s
或 --service=CONFIG
要使用的服务配置-?
或 --help
给出该系统求助列表,不能使用选项 -h
查看使用帮助--usage
给出简要的用法信息-V
或 --version
打印程序版本号
参考示例
查看文件 /etc/protocols 中的所有记录
[root@htlwk0001host ~]# getent protocols
ip 0 IP
hopopt 0 HOPOPT
icmp 1 ICMP
igmp 2 IGMP
ggp 3 GGP
ipv4 4 IPv4
st 5 ST
查看指定用户组是否存在,若不存在则创建指定的用户组
在文件 /etc/group 中查看用户组 test 是否存在,如果不存在则创建,如果存在则退出:
[root@htlwk0001host ~]# getent group test || groupadd test
根据主机名称,查看对应的IP地址
例如,你知道主机名称 ubuntu,要查看对应的IP地址,可以执行下面的命令:
[root@htlwk0001host ~]# getent hosts ubuntu
127.0.1.1 ubuntu
192.168.0.2 ubuntu
getent 命令会读取文件 /etc/hosts
中的内容,检索 ubuntu 有关的条目,将检索到的结果输出。
[root@htlwk0001host ~]# getent hosts myhost.mydomain.com
15.77.3.40 myhost.mydomain.com myhost
根据用户名查找对应的UID
[root@htlwk0001host ~]# getent passwd greys
greys:x:1000:1000:Gleb Reys:/home/greys:/bin/bas
getent 命令会读取文件 /etc/passwd
的内容,检索 greys 有关的条目,并输出检索到的结果。
[root@htlwk0001host ~]# getent passwd `whoami`
root:x:0:0:root:/root:/bin/bash
注意:whoami 使用反撇号引起来。
根据UID查找用户名[root@htlwk0001host ~]# getent passwd 1000
greys:x:1000:1000:Gleb Reys,,,:/home/greys:/bin/bash
查找那个服务在使用特定端口
[root@htlwk0001host ~]# getent services 22
ssh 22/tcp
[root@htlwk0001host ~]# getent services 21
ftp 21/tcp
[root@htlwk0001host ~]# getent services 25
smtp 25/tcp mail
查看指定名称的用户组信息
查看 /etc/group
中 jack 组的信息:
[root@localhost 2]# getent group jack
jack:x:1000:tom1