Sponsored Content
Top Forums Shell Programming and Scripting Script to list primary group of users Post 302461734 by Aswex on Tuesday 12th of October 2010 06:16:09 AM
Old 10-12-2010
Script to list primary group of users

Dear All

I am facing a problem with my script.
I have to found the primary group of users .

So first I selected all the groups and users register from a specific user : ONE
Then I am making a file with all groups attached to the user : ONE
Then I am making a file with all users from each group of that user : ONE Then for each user I have to found his primary group

Ex : Groups of USER ONE

GRP1 ::111 :ONE,TWO,THRE
GRP2 ::2848 :SIX ;ONE,SEVEN
and so one


Here is the script that i have writen :


Code:
#!/bin/ksh -p

touch fic_ListGRP_tmp.log
touch fic_ListUSR_tmp.log
touch fic_results_tmp.log

cat /etc/group | grep ONE | awk 'BEGIN{FS=":"}{print $1}' >> fic_ListGRP_tmp.log
for groupe in `cat fic_ListGRP_tmp.log` ;
do
cat /etc/group | grep ${groupe} | awk 'BEGIN{FS=":"} {print $4}' | sed 's/,/ /g' > fic_ListUSR_tmp.log
for user in `cat fic_ListUSR_tmp.log`
do
group_prim=`cat /etc/passwd | grep $user: | awk 'BEGIN{FS=":"}{print $4}' | head -1`
name_groupe=`cat /etc/group | grep ":$group_prim:" | awk 'BEGIN{FS=":"}{print $1}'`
echo "$user $group_prim $name_groupe" | tee -a >> fic_results_tmp.log

\rm ${fic_ListGRP_tmp.log}
\rm ${fic_ListUSR_tmp.log}



done
done

My problem is the number of users listed is by far beyond of the userlist.

I've got 151 users but at the end the list contain 298 entries .... I can't find what is wrong.

Thanks for your help.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How to find All Primary and Secondary Group ID's for a user

Is there any command which can list me all the Group ID's (Primary, Secondary ) assocaited with a single user. Thanks Sanjay (2 Replies)
Discussion started by: sanjay92
2 Replies

2. UNIX for Dummies Questions & Answers

command help, how do i list the users of a group?

What command allows you to display a list of the userids of all the other users in a group, regardless if they are logged in or not? (3 Replies)
Discussion started by: crabtruck
3 Replies

3. Solaris

How do you list users in a solaris group

I need to list all users in a group. This is a large unix site running nis+. (6 Replies)
Discussion started by: gillbates
6 Replies

4. UNIX for Advanced & Expert Users

Change a users primary group after login

When users login, they are directed to menu (aix script). The menu enables the user to choose an environment to work in. Each environment has a different group id. When a user chooses a menu option, I want to change his primary group to that specific environment's group id. Is this at all possible... (3 Replies)
Discussion started by: terrym
3 Replies

5. Shell Programming and Scripting

List ALL users in a Unix Group (Primary and Secondary)

Is there a command or better combination of cmds that will give me the list of Unix users in a particular Unix group whether their primary group is that group in question (information stored in /etc/passwd) or they are in a secondary group (information stored in /etc/group). So far all I got... (5 Replies)
Discussion started by: ckmehta
5 Replies

6. AIX

script for finding all the users with GID 0 ( admin group )

Hi Friends, I am trying to write a script for finding all the users with the GID 0 i.e. Admin users. can you please help me on this. (1 Reply)
Discussion started by: anoopraok
1 Replies

7. Ubuntu

primary group for user

HI I need to know what is the primary group name of a particular user. How to do this ? Maybe with groups cmd ? (first group name in line, is the primary group) thx for help. (2 Replies)
Discussion started by: presul
2 Replies

8. Shell Programming and Scripting

Script to add new users to a group on multiple servers using SSH

Hi Experts, I am new to scripting. We have around 400 Linux servers in our environment. I want to add a new user to a perticular group on all the servers using SSH. Requirements: 1) Need to take the server names from a text file. 2) Login into each server and check whether perticular... (1 Reply)
Discussion started by: Satya1983
1 Replies

9. UNIX for Beginners Questions & Answers

Primary group

Is it possible user without a primary group (3 Replies)
Discussion started by: lobsang
3 Replies

10. HP-UX

Creating a group of users with script

Hi, I have a file with usernames, and the comment section, e.g : Data removed by request of sanchitadutta91, 20 May 2020 I need to add these users into a server. Is it possible to use a script to create the users, together with the comment ? From the commandline to add one user, the... (2 Replies)
Discussion started by: anaigini45
2 Replies
CGRULESENGD(8)							 libcgroup Manual						    CGRULESENGD(8)

NAME
cgrulesengd - control group rules daemon SYNOPSIS
cgrulesengd [options] DESCRIPTION
cgrulesengd is a daemon, which distributes processes to control groups. When any process changes its effective UID or GID, cgrulesengd inspects the list of rules loaded from the cgrules.conf file and moves the process to the appropriate control group. The list of rules is read during the daemon startup is are cached in the daemon's memory. The daemon reloads the list of rules when it receives SIGUSR2 signal. The daemon opens a standard unix socket to receive 'sticky' requests from cgexec. OPTIONS
-h|--help Display help. -f <path>|--logfile=<path> Write log messages to the given log file. When '-' is used as <path>, log messages are written to the standard output. If '-f' and '-s' are used together, the logs are sent to both destinations. -s[facility]|--syslog=[facility] Write log messages to syslog. The default facility is DAEMON. If '-f' and '-s' are used together, the logs are sent to both destina- tions. -n|--nodaemon Don't fork the daemon, stay in the foreground. -v|--verbose Display more log messages. This option can be used twice to enable more verbose log messages. -q|--quiet Display less log messages. This option can be used twice to enable even less log messages and to only log errors. -Q|--nolog Disable logging. -d|--debug Equivalent to '-nvvf -', i.e. don't fork the daemon, display all log messages and write them to the standard output. -u <user>|--socket-user=<user> -g <group>|--socket-group=<group> Set the owner of cgrulesengd socket. Assumes that cgexec runs with proper suid permissions so it can write to the socket when cgexec --sticky is used. FILES
/etc/cgrules.conf the default libcgroup configuration file SEE ALSO
cgrules.conf (5) Linux 2009-02-18 CGRULESENGD(8)
All times are GMT -4. The time now is 09:50 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy