Linux

顯示所有使用者及其組/反之亦然

  • November 12, 2019

我知道我有現有的組和使用者,但我不確定他們的關聯。是否有一個 shell 命令我可以用來列出所有使用者或所有組,以及一個命令來列出指定使用者/組的所有組/使用者?

所以類似的東西showusers會列出所有使用者,並showgroups -u thisuser顯示其中包含的所有組thisuser

所有使用者:

$ getent passwd

所有組:

$ getent group

具有特定使用者的所有組:

$ getent group | grep username

列出使用者及其組:

for user in $(awk -F: '{print $1}' /etc/passwd); do groups $user; done

列出組及其使用者:

cat /etc/group | awk -F: '{print $1, $3, $4}' | while read group gid members; do
   members=$members,$(awk -F: "\$4 == $gid {print \",\" \$1}" /etc/passwd);
   echo "$group: $members" | sed 's/,,*/ /g';
done

引用自:https://serverfault.com/questions/355292