Sponsored Content
Full Discussion: password changing
Top Forums Shell Programming and Scripting password changing Post 302641545 by somersetdan on Wednesday 16th of May 2012 09:21:11 AM
Old 05-16-2012
password changing

Hi all
Im trying to learn the basics of bash and am struggling with some file manipulation. I am trying to run a script that once you have logged in allows you to change your password which is held (along with the corresponding username) in a different file called usernames. When i try to run my code the logon part runs fine, but the change of password is not storedSmilie. Any advice would be greatly appreciated.

Thanks

Code:
#!/bin/bash

# script to change a password
username ()

{
while :
do
echo "please enter a username"
read user
grep -iq "$user" usernames
a=$?
echo "please enter pin"
read pin
grep -i "^$user" usernames | grep -q "$pin$"
b=$?

if [ $a -eq 0 -a $b -eq 0 ]
then
echo "Welcome"
change1
break
else
echo "Please try again"
fi
done
}


change1 ()
{
echo "please enter a new password"
read npass

sed 's/$pin/$npass/' usernames
echo "here are your logon details"
sed -n '/^$user/p' usernames
return
}

username

The file I am using looks like this:

Code:
#!/bin/bash

Username        Password

John    123
Dan     345
Matt    678

---------- Post updated at 02:21 PM ---------- Previous update was at 01:29 PM ----------

Ok, is there anyway of using a sed command to change the contents of a file, as I have found that whilst my sed command changes the value on the command screen but not in the file. Is it possible to alter the value in the file?
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Password Changing With NIS

SCO OpenServer 5.05 Has anyone ever received this error when attempting to change/assign a user password? #ypasswd ======================================= yppasswd: (host name) is not running yppasswd daemon Password request denied. Reason: Remote password change request denied.... (2 Replies)
Discussion started by: gseyforth
2 Replies

2. Solaris

changing password

Hi Someone logged on the system with a Normal user and changed the password , for this user , how can i know ? who changed the password from which terminal ? regards Georges (5 Replies)
Discussion started by: itsgeorge
5 Replies

3. UNIX for Dummies Questions & Answers

Changing password is to short ?

Hello im trying to change the user password with passwd but when I enter the password it gives me this msg: passwd: Password too short - must be at least 6 characters. BUT the thing is that the initial password was 4 letters why now it asking for 6 ? tnx (2 Replies)
Discussion started by: umen
2 Replies

4. AIX

changing user password

I have 02 servers: - Linux RHEL AS 3 (server1) - AIX 5.2 (server2) Running the command rsh server2 passwd derje from the server1 to change derje user password on server2, give me this error: 3004-709 Error while changing the password for "derje" Can somebody help me ? (0 Replies)
Discussion started by: mayge
0 Replies

5. HP-UX

Changing root password

I have two unix system A and B with same configuration. I can use remsh from A system login to B system as root, but when I want to change the root password of B system, it ask me the old password, but i forgot it. However, is it possible to change the B system root password? :( Thanks a lot (3 Replies)
Discussion started by: zetadhell
3 Replies

6. Solaris

Changing Password in NIS

Friends I want to know whether i can change the password of a user logged in thru NIS from a client machine after stopping the YP services in NIS server. Note - The Slave server is up and running. I tried doing this. But i got the reply "Permission Denied". I stopped the YP services in... (7 Replies)
Discussion started by: efunds
7 Replies

7. Linux

Problem changing user password

Hi all, I'm having an issue resetting an Linux user password. As root, I type 'passwd <username>, enter the new password, but the user is still Access Denied. Can someone assist me in figuring this one out? The box is running "Linux trm62 2.4.21-15.ELsmp #1 SMP Thu Apr 22 00:18:24 EDT 2004... (6 Replies)
Discussion started by: bbbngowc
6 Replies

8. Solaris

Solaris user changing password

i created 1 user . Now its passwd time period get expired. Now how can I set password for that user. Also how can I set a condition such a way that after every 3 months user must change his passwd. (5 Replies)
Discussion started by: ajitkraj
5 Replies

9. UNIX for Advanced & Expert Users

Changing the password prompt

Is there any way I can change the prompt which asks for the password on a UNIX system? e.g. When I login using Telnet instead of "Password" I should get "Correct Password". Thanks, Vineet (3 Replies)
Discussion started by: vineetd
3 Replies

10. AIX

Changing root password

I want to change the root password on an AIX box. What is the best method to do this so i do not get myself locked out. When I do i search the results come up for resetting the password if you are locked out. Thanks (5 Replies)
Discussion started by: fierfek
5 Replies
UPSRW(8)							    NUT Manual								  UPSRW(8)

NAME
upsrw - UPS variable administration tool SYNOPSIS
upsrw ups upsrw -h upsrw -s variable [-u username] [-p password] ups DESCRIPTION
upsrw allows you to view and change the read/write variables inside your UPS. It sends commands via the server upsd(8) to your driver, which configures the hardware for you. The list of variables that allow you to change their values is based on the capabilities of your UPS equipment. Not all models support this feature. Typically, cheaper hardware does not support any of them. Run upsrw with a UPS identifier to see what will work for you. OPTIONS
-h Display the help message. -s variable Specify the variable to be changed inside the UPS. For unattended mode such as in shell scripts, use the format VAR=VALUE to specify both the variable and the value, for example: -s input.transfer.high=129 Without this argument, upsrw will just display the list of the variables and their possible values. Some variables are strings, and can be set to any value within the length limit. Others are enumerated types and can only be set to one of those values. Others may be within an allowed range of values. Refer to the list to know what's available in your hardware. -u username Set the NUT username for the connection to the server. This is optional, and you will be prompted for this when using the -s option if you don't specify -u on the command line. NUT usernames are defined in upsd.users(5), and are not linked to system usernames. -p password Set the password to authenticate to the server. This is also optional like -u, and you will be prompted for it if necessary. ups View or change the settings on this UPS. The format for this option is upsname[@hostname[:port]]. The default hostname is "localhost". UNATTENDED MODE
If you run this program inside a shell script or similar to set variables, you will need to specify all of the information on the command line. This means using -s VAR=VALUE, -u and -p. Otherwise it will put up a prompt and your program will hang. This is not necessary when displaying the list, as the username and password are not required for read-only mode. DIAGNOSTICS
upsrw can't set variables on your UPS unless you provide a valid username and password. If you get "access denied" errors, make sure that your upsd.users(5) has an entry for you, and that the username you are using has permissions to SET variables. HISTORY
This program used to be called upsct2, which was ambiguous and confusing. SEE ALSO
upsd(8), upscmd(8) Internet resources: The NUT (Network UPS Tools) home page: http://www.networkupstools.org/ Network UPS Tools 05/24/2012 UPSRW(8)
All times are GMT -4. The time now is 04:31 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy