Sponsored Content
Top Forums Shell Programming and Scripting Script to list primary group of users Post 302461778 by bakunin on Tuesday 12th of October 2010 07:57:57 AM
Old 10-12-2010
First off, there are several syntactical problems in your script:

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

I don't know what this is supposed to do, but most probably it won't do it, whatever "it" is.

Second, i don't know which system you are working on. If it is some Linux or Linuxoid system you can simply get all the primary groups of all the users by reading field 4 in the file /etc/passwd. If you need the groups name just refer to /etc/group for a name-GID relation. See the code-snippet below:

Code:
cat /etc/passwd |\
cut -d':' -f1,4 |\
while read chUser chPGID ; do
     chPGIDName="$(grep ":${chPGID}:" /etc/group | cut -d':' -f1)"
     print - "User: $chUser \t Prim. Group: $chPGID \t Groups Name: $chPGIDName"
done

The reason why your code might have failed is not clear. One possibility is that you counted users more than one times: suppose user ONE has groups A, B, C, D, user B has groups "A, C, D". Per your algorithm you would find user account B three times and count it for three distinct users. To avoid this you will have to make your list with users unique by filtering out all the doubles, probably by filtering the fnal list through "sort -u" or something such.

I hope this helps.

bakunin
This User Gave Thanks to bakunin For This Post:
 

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
ADDUSER(8)						      System Manager's Manual							ADDUSER(8)

NAME
adduser - procedure for adding new users DESCRIPTION
A new user must choose a login name, which must not already appear in /etc/passwdor /etc/aliases. It must also not begin with the hyphen (``-'') character. It is strongly recommended that it be all lower-case, and not contain the dot (``.'') character, as that tends to con- fuse mailers. An account can be added by editing a line into the passwd file; this must be done with the password file locked e.g. by using chpass(1) or vipw(8). A new user is given a group and user id. Login's and user id's should be unique across the system, and often across a group of systems, since they are used to control file access. Typically, users working on similar projects will be put in the same groups. At the Univer- sity of California, Berkeley, we have groups for system staff, faculty, graduate students, and special groups for large projects. A skeletal account for a new user "ernie" might look like: ernie::25:30::0:0:Ernie Kovacs,508 Evans Hall,x7925,642-8202:/a/users/ernie:/bin/csh For a description of each of these fields, see passwd(5). It is useful to give new users some help in getting started, supplying them with a few skeletal files such as .profile if they use "/bin/sh", or .cshrc and .login if they use "/bin/csh". The directory "/usr/skel" contains skeletal definitions of such files. New users should be given copies of these files which, for instance, use tset(1) automatically at each login. FILES
/etc/master.passwd user database /usr/skel skeletal login directory SEE ALSO
chpass(1), finger(1), passwd(1), aliases(5), passwd(5), mkpasswd(8), vipw(8) BUGS
User information should (and eventually will) be stored elsewhere. 4th Berkeley Distribution October 23, 1996 ADDUSER(8)
All times are GMT -4. The time now is 09:48 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy