simple shell script problem

hi all. i have a little problem. im basically reading input from the user from the keyboard into the variable "phonenumber". I want to do a little error check to check if the user doesnt enter anything in for the value phonenumber.

i had this:

read phonenumber

if [ $phonenumber=" " ]
then
.....
else
.....
fi

but thatjust performs then instructions in between "then" and "else", but not "else" and "fi". any ideas?

thanks all in advance for your help.

hiiii djt0506,

got a easy solution for you :slight_smile: ...

you neeed to write a function "function Func_validate_phone_number" which will validate the phone number entered by the user.
if the ph no is blank it will again call the same function and will ask the user to enter it again....until he enters any thing other than "enter".

if you want to validate it further (for valid numbers or no characters etc) then you need to do some more validations....which again quiet easy :p.

here is my code....

function Func_validate_phone_number {

if [ -z "$ph" ]
then
echo "Phone Number cannot be blank....please re-enter."
read ph
Func_validate_phone_number "$ph"
else
echo "Thanks for giving your phone number.....bye"
fi

}

echo "Enter the phone number"
read ph
Func_validate_phone_number "$ph"

i have tested it .....it works fine :wink: ...

cya

Keep the code short and simple. Bhups, you have a nice idea there, but I think it may be confusing for some (recursive code can be).

#!/usr/bin/sh
echo "Enter phone number: \c"
while read phone_no; do
        if [ -n "$phone_no" ]; then
                break
        fi
        echo "No input offered. Please enter phone number: \c"
done