Sponsored Content
Top Forums Shell Programming and Scripting Updating the comments field on /etc/passwd Post 302275734 by Linux Duke on Monday 12th of January 2009 03:18:26 AM
Old 01-12-2009
Question Updating the comments field on /etc/passwd

Hi there,

I have more that 300 servers that I need to updated the comments field on /etc/passwd for users that have a blank comments fields. The users have accounts on different servers. I have created a list of these users on a text file called update.txt check below.
I need a script that will compare this file with /etc/passwd first backup the passwd database and update the comment field on /etc/passwd with the details on the text file if it's blank.
I have a script that I have created not sure if it will do the job as I have not worked a lot with scripts.
Below is my script and attached is my text file:
Code:
#!/usr/bin/bash
FILE1=/tmp/update.txt
FILE2=/etc/passwd
cp $FILE2 /etc/passwd.orig

for i in `cat $FILE1 | awk -F":" '{ print $2 }'`
do
 FIELD1=`cat $FILE1 | grep ${i} |awk -F":" '{ print $3 }'`
 grep $i ${FILE2}
 if [ $? -eq 0 ]
 then
  usermod -c "${FIELD1}" $i
 fi
done

I will highly appreciate your assistance.

Update.txt

SERVER1:SINLO_R:SINLO ROGGER
SERVER1:AVNlnx:LINUX Admistrator/junior
SERVER1:nfsnobody:LINUX Admistrator
SERVER1:REGGIE_P:REGGIE PABLO
SERVER1:STONE_P:STONE PANE
SERVER2:SINLO_R:SINLO ROGGER
SERVER2:AVNLNX:LINUX Admistrator/junior
SERVER2:nfsnobody:LINUX Admistrator
SERVER2:REGGIE_P:REGGIE PABLO
SERVER2:STONE_P:STONE PANE

Last edited by otheus; 01-12-2009 at 10:36 AM.. Reason: [code] tags and formatting
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Trying to extract a field from /etc/passwd file..

Hello, was looking for some help on extracting a field from the passwd file. So far I have made a copy of the passwd file and changed my rights so I can edit it. Every user's password is coded as an :x:, and my goal was to change that x to a blank, and then try to extract any user with that field... (2 Replies)
Discussion started by: xBuRnTx
2 Replies

2. Programming

lint comments

Hi can anyone help me regarding the meaning of the following lint messages. what is the use of having such lint comments in the c program. /*lint -esym(534,cputs,fgets,cprintf) */ /*lint -efile(766,pragmas.h) */ Thanks a lot in advance. (5 Replies)
Discussion started by: axes
5 Replies

3. Shell Programming and Scripting

awk updating one file with another, comparing, updating

Hello, I read and search through this wonderful forum and tried different approaches but it seems I lack some knowledge and neurones ^^ Here is what I'm trying to achieve : file1: test filea 3495; test fileb 4578; test filec 7689; test filey 9978; test filez 12300; file2: test filea... (11 Replies)
Discussion started by: mecano
11 Replies

4. Shell Programming and Scripting

Script for updating the comments field on /etc/passwd on redhat linux

Hi there, I have more that 300 servers that I need to updated the comments field on /etc/passwd for users that have a blank comments fields. The users have accounts on different servers. I have created a list of these users on a text file called update_passwd.txt. I need a script that will... (6 Replies)
Discussion started by: Linux Duke
6 Replies

5. UNIX for Dummies Questions & Answers

Updating a field in a File without creating temp file's

Hi Experts, I have a requirement where i need to update the below items in file, 1. END TIME 2. PREV_STATUS For the first time the PREV_status and end time of all job the job will be sysdate & NULL reply as below, Session_name,Load Type,Frequency,Seesion End time,Prev_Status... (2 Replies)
Discussion started by: prabhutkl
2 Replies

6. Shell Programming and Scripting

Sed script, changing all C-comments to C++-comments

I must write a script to change all C++ like comments: // this is a comment to this one /* this is a comment */ How to do it by sed? With file: #include <cstdio> using namespace std; //one // two int main() { printf("Example"); // three }//four the result should be: (2 Replies)
Discussion started by: black_hawk
2 Replies

7. Solaris

passwd cmd reenables passwd aging in shadow entry

Hi Folks, I have Solaris 10, latest release. We have passwd aging set in /etc/defalut/passwd. I have an account that passwd should never expire. Acheived by emptying associated users shadow file entries for passwd aging. When I reset the users passwd using passwd command, it re enables... (3 Replies)
Discussion started by: BG_JrAdmin
3 Replies

8. UNIX for Dummies Questions & Answers

Delete Comments

Hello i am back :D, i have a prolem. I want to Delete the IPs which are in Comments. Input 192.168.0.1 192.168.0.2 #192.168.0.3 #192.168.0.4 - when TAB or Space, delete too. /*192.168.0.5 192.168.0.6 192.168.0.7*\ Output 192.168.0.1 192.168.0.2 My solution is sed -e... (7 Replies)
Discussion started by: eightball
7 Replies

9. AIX

When did AIX start using /etc/security/passwd instead of /etc/passwd to store encrypted passwords?

Does anyone know when AIX started using /etc/security/passwd instead of /etc/passwd to store encrypted passwords? (1 Reply)
Discussion started by: Anne Neville
1 Replies

10. Solaris

Passwd -l or -u modifies lastchg field in /etc/shadow file

Hi, I have a Solaris 10 box where password aging is not functioning properly. Using the passwd command with the -l or -u options causes the lastchg field in the /etc/shadow file to be modified. Therefore, if a user's password is set to expire in 90 days and they are 1 day away, all they have... (4 Replies)
Discussion started by: cschar
4 Replies
UPDATE-PASSWD(8)					      System Manager's Manual						  UPDATE-PASSWD(8)

NAME
update-passwd - safely update /etc/passwd, /etc/shadow and /etc/group SYNOPSIS
update-passwd [options] DESCRIPTION
update-passwd handles updates of /etc/passwd, /etc/shadow and /etc/group on running Debian systems. It compares the current files to mas- ter copies, distributed in the base-passwd package, and updates all entries in the global system range (that is, 0-99). OPTIONS
update-passwd follows the usual GNU command line syntax, with long options starting with two dashes ('-'). -p, --passwd-master=FILE Use FILE as the master copy of the passwd database. The default value is /usr/share/base-passwd/passwd.master. -g, --group-master=FILE Use FILE as the master copy of the group database. The default value is /usr/share/base-passwd/group.master. -P, --passwd=FILE Use FILE as the system passwd database. The default value is /etc/passwd. -S, --shadow=FILE Use FILE as the system shadow database. The default value is /etc/shadow. -G, --group=FILE Use FILE as the system group database. The default value is /etc/group. -s, --sanity-check Only perform sanity-checks but don't do anything. -v, --verbose Give detailed information about what we are doing. A second -v gives additional detail. -n, --dry-run Don't do anything but only show what we would do. -L, --no-locking Don't attempt to lock the account database. This should only be used for debugging purposes. I repeat: do not do this unless you are really sure you need this! -h, --help Show a summary of how to use update-passwd. -V, --version Show the version number BUGS
At this moment update-passwd does not verify the shadow-file. It should check if the entries in the passwd are also in shadow and vice versa, and that passwords are not present in both files. AUTHOR
Wichert Akkerman <wakkerma@debian.org> This program was written for the Debian project, and is copyright 1999-2002 Wichert Akkerman and copyright 2002, 2003 Colin Watson. It is distributed under version 2 of the GNU General Public License. DEBIAN
Debian tools UPDATE-PASSWD(8)
All times are GMT -4. The time now is 01:14 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy