Shell script for list of users by groups

I want to write a shell script that generates a list of users. for each user display the username and ID and all groups the user is a member of

it means like GROUPS command but for all users and with their id I used cat -d: -f1,3 /etc/passwd to show the users with their id but I don't know how can I use the groups for each line

would you please help me to write this script thanks

1

1 Answer

Use this script:

#! /bin/bash
#
for i in $(cat /etc/passwd | cut -d: -f1); do echo -n $i ": " grep $i /etc/group | cut -d: -f1 | tr "\n" " " echo
done

It will list all users in the system (included system) and print the list of groups near them. With a trivial modification you can print the numeric id too.

2

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like