12-18-2006
Good (reliable!) check if user exists
Hi all,
I've been trying to find a good check I can put it in to a shell script to see if a given user exists.
Some of the things I've thought about is checking whether they have a home directory, but not all users have a home directory. I've thought about grepping the /etc/passwd file for the username but if the username is short and happens to be a repeated string somewhere else in the file then this check could fail or be inaccurate too.
Ideally I would like a simple command so I can just use it in an if/else statement, so if the user exists then do this and if the user doesn't exist then do something else.
In case it helps it would be using the bash shell and would need to be supported by RedHat 9 and SuSE 10 but that shouldn't make too much difference.
Any ideas would be appreciated no matter how bizzare they may seem
Thanks.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I need to prompt for a response from a user to enter a path
read dest_dir?"Please Enter Directory :"
How do I do this until a valid directory is entered by the user. I can use
to check the existence of the directory. However when I try the following I cannot get it to work.
while ... (2 Replies)
Discussion started by: jerardfjay
2 Replies
2. SCO
Hi All,
I am new to shell scripting.
Can someone let me know, how to check whether the user exists in the remote system?
I am building a new unix box and before I proceed installing the appliation , I want to check whether the required users are created in the system .
how to do this ?... (1 Reply)
Discussion started by: Srini75
1 Replies
3. Shell Programming and Scripting
Hi Good people :D
How do I check if a directory exists, if it does then carry on rest of the script, otherwise exit.
-------------
cd $mainfolder/system1
#unzips files arrived in last 24 hrs into temp directory
find * -mmin -1440 -exec unzip {} \;
I'd like to check here if temp... (2 Replies)
Discussion started by: SunnyK
2 Replies
4. Shell Programming and Scripting
Hi folks!
First off I'm working with a Sybase DB.
I'm using you're basic ISQL command to connect to my Sybase DB...
isql -S$DB_SERVER -D$DB_NAME -U$DB_USR -P$DB_PWD <<!EOF > $log_file
My question is, is there a way to determine if a database exists using shell script?
For example, if... (2 Replies)
Discussion started by: Fatbob
2 Replies
5. Shell Programming and Scripting
Hello!
I'm stuck with a problem that i can't solve. I'm very new to unix, linux and shell scripting i might add. I'm trying to create a script that will execute as follows:
First start the script - sh exist
Then the prompt asks the user to input a username to check if it exists within the... (6 Replies)
Discussion started by: bib2006
6 Replies
6. Shell Programming and Scripting
Hi
#Testing for file existence
if ; then
echo 'SCHOOL data is available for processing'
else
echo 'SCHOOL DATA IS NOT AVAILABLE FOR PROCESSING'
:
i wrote a script, where it begins by checking if file exists or not.
If it exists, it truncates the database... (2 Replies)
Discussion started by: rxg
2 Replies
7. Homework & Coursework Questions
Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!
1. The problem statement, all variables and given/known data:
We must do the following for a massive coding project that is due at 12:20PM on Monday, July 22, 2013. We are to... (1 Reply)
Discussion started by: kowit010
1 Replies
8. UNIX for Dummies Questions & Answers
Hello,
May i please know how do i check if the given input argument is one of the listed numbers then success else failure. I am using bash shell.
if
then
echo "success"
else
echo "failure"
fi
Thank you. (2 Replies)
Discussion started by: Ariean
2 Replies
9. Shell Programming and Scripting
Hi,
I need to check if the URL exists.
Below is my OS:
SunOS mymac1 Generic_148888-04 sun4v sparc SUNW,SPARC-Enterprise-T5220
I do not have the curl set in the profile nor am i aware about its path.
But i have wget. Please help me with params for the same.
Can you help me check if... (6 Replies)
Discussion started by: mohtashims
6 Replies
10. Shell Programming and Scripting
Hi,
I want to check if the file exists or not in the directory.
i am trying below code but not working.
File="/home/va59657/Account_20090213*.dat"
echo "$File"
if ]; then
echo "file found"
else
echo "file not found"
fi
However i am getting file not found even if file exits as... (5 Replies)
Discussion started by: Vivekit82
5 Replies
LEARN ABOUT DEBIAN
qmail-pw2u
qmail-pw2u(8) System Manager's Manual qmail-pw2u(8)
NAME
qmail-pw2u - build address assignments from a passwd file
SYNOPSIS
qmail-pw2u [ -/ohHuUC ] [ -cchar ]
DESCRIPTION
qmail-pw2u reads a V7-format passwd file from standard input and prints a qmail-users-format assignment file.
A V7-format passwd file is a series of lines. Each line has the format
user:password:uid:gid:gecos:home:shell
where user is an account name, uid and gid are the user id and group id of that account, and home is the account's home directory. pass-
word, gecos, and shell are ignored by qmail-pw2u.
If you put the output of qmail-pw2u into /var/lib/qmail/users/assign, and then run qmail-newu, qmail-lspawn will obey the assignments
printed by qmail-pw2u. WARNING: After changing any users, uids, gids, or home directories in your passwd file, you must run qmail-pw2u and
qmail-newu again if you want qmail-lspawn to see the changes.
RULES
By default, qmail-pw2u follows the same rules as qmail-getpw. It skips user if (1) uid is zero, (2) home does not exist, (3) user does not
own home, or (4) user contains uppercase letters. It then gives each remaining user control over the basic user address and all addresses
of the form user-anything. A catch-all user, alias, controls all other addresses.
You may change these rules by setting up files in /var/lib/qmail/users:
include
Allowed users, one per line. If include exists, and user is not listed in include, user is ignored.
exclude
Ignored users, one per line. If exclude exists, and user is listed in exclude, user is ignored.
mailnames
Replacement names for users. Each line has the form
user:mailname1:mailname2:...
The addresses mailname1 and mailname1-ext and mailname2 and so on will be delivered to user.
WARNING: The addresses user and user-ext will not be delivered to user unless user is listed as one of the mailnames.
A line in mailnames is silently ignored if the user does not exist.
subusers
Extra addresses. Each line has the form
sub:user:pre:
sub will be handled by home/.qmail-pre, where home is user's home directory; sub-ext will be handled by home/.qmail-pre-ext.
append Extra assignments, printed at the end of qmail-pw2u's output.
OPTIONS
-o (Default.) Skip user if home does not exist (or is not visible to qmail-pw2u). Skip user if home is not owned by user.
-h Stop if home does not exist. This is appropriate if every user is supposed to have a home directory. Skip user if home is not
owned by user.
-H Do not check the existence or ownership of home.
-U (Default.) Skip user if there are any uppercase letters in user.
-u Allow uppercase letters in user.
-cchar Use char as the user-extension delimiter in place of -.
-C Disable the user-extension mechanism.
-/ Use home/.qmail-/... instead of home/.qmail-...
SEE ALSO
qmail-users(5), qmail-lspawn(8), qmail-newu(8), qmail-getpw(8)
qmail-pw2u(8)