查找所有用户的主目录

查找所有用户的主目录

我是一名软件开发人员,突然发现自己必须扮演系统管理员的角色。

最近,有人将一个之前由其他人管理的盒子交给了我,而这个系统管理员只是按照他的意思行事。我的主管将这个盒子交给了系统管理员,看起来用户的主目录隐藏在盒子的各个地方。

不用说,他的问题的答案是“嘿,实习生!”

所以,我想知道是否有办法找到机器上所有用户的所有主目录?我正在使用的机器是 RHEL 5。

答案1

假设所有用户都是本地用户(即没有网络目录服务,如 LDAP、Active Directory、NIS 等),那么本地用户可能全部枚举在 中/etc/passwd,这是一个以冒号分隔的文件,包含以下字段:

username:password:uid:gid:name:home directory:shell

如果这样更简单的话,您可以只获取用户名和主目录,如下所示:

awk -F: '{print $1,$6}' /etc/passwd

使用 Urgoll 的建议使用该getent命令,即:

getent passwd | awk -F: '{print $1,$6}'

答案2

你真幸运!你想要的一切都有了/etc/passwd:-)

例如:

jay:x:1000:1000:Jay Shah,,,:/home/jay:/bin/bash

我的用户名 在哪里jay1000我的 uid/gid 在哪里,/home/jay我的主目录 在哪里,/bin/bash我的 shell 在哪里。

相关内容