linux命令";getent“;在linux文件系统中不返回所有数字用户名(例如10798)
我正在使用“getent”命令获取linux文件系统中的用户信息 我有一个用户名为“10798”的用户和另一个用户名为“user”且用户ID为“10798”的用户,我正在使用getent命令获取名为“10798”的用户的用户信息 但是命令没有给出任何输出 我认为,如果将所有数值作为命令的输入,那么命令“getent”只会查找用户id号 下面是一个场景linux命令";getent“;在linux文件系统中不返回所有数字用户名(例如10798),linux,bash,Linux,Bash,我正在使用“getent”命令获取linux文件系统中的用户信息 我有一个用户名为“10798”的用户和另一个用户名为“user”且用户ID为“10798”的用户,我正在使用getent命令获取名为“10798”的用户的用户信息 但是命令没有给出任何输出 我认为,如果将所有数值作为命令的输入,那么命令“getent”只会查找用户id号 下面是一个场景 # cat /etc/passwd 10798:x:10799:10799::/home/10798:/bin/bash user:x:10798
# cat /etc/passwd
10798:x:10799:10799::/home/10798:/bin/bash
user:x:10798:10798::/home/user:/bin/bash
# getent passwd 10798
user:x:10798:10798::/home/user:/bin/bash
如何使用getent命令获取用户名为10798的用户
passwd当没有提供密钥时,使用setpwent(3)、getpwent(3),
和endpwent(3)枚举passwd数据库。什么时候
提供了一个或多个关键参数,请分别传递
getpwuid(3)的数字键和getpwuid(3)的每个非数字键
getpwnam(3)并显示结果
我从linux手册页上了解到,是否有办法将数字键重定向到getpwnamls已经执行了该查找。可以使用从命令行执行用户信息查找 如果ls显示的是用户ID而不是用户名,那是因为没有该用户名的用户。文件系统存储用户ID,而不是用户名。如果您从另一个系统装载文件系统,或者如果文件属于现在已删除的用户,或者如果您将数字用户ID传递给chown,那么您可以拥有一个属于没有名称的用户ID的文件
在共享主机上,您可以访问在多个虚拟机之间共享的某些文件,每个虚拟机都有其用户数据库。这有点奇怪(为什么要共享文件,而不是共享文件的用户?),但这在技术上是可能的。
getent passwd | grep'^10798:“
。它工作正常。。。。。Thank@Cyruspasswd:如果没有提供键,请使用setpwent(3)、getpwent(3)和endpwent(3)枚举passwd数据库。当提供一个或多个键参数时,将每个数字键传递给getpwuid(3),将每个非数字键传递给getpwnam(3),并显示结果。我是从linux手册页上得到的,有没有办法在命令getent中将非数字键传递给getpwnam