Some beginner help with an if/else statement!


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Some beginner help with an if/else statement!
# 1  
Old 03-11-2011
Some beginner help with an if/else statement!

Hi, first post here, probably seems like a fairly obvious answer but ah well! Just having a bit of trouble with this if/else statement, anyone see what I'm doing wrong?

Code:
#!/bin/sh
name="wayne"
password="12345"
echo "Hello, what is your name?"
read enteredname
clear
if [ "$enteredname" -eq "$name" ];then
        echo "Hi $name, what is your password?"
        read enteredpassword
        clear
        if [ "$enteredpassword" -eq "$password" ];then
                echo "Welcome $name, your username and password are correct!"
        else echo "Sorry $name, that password is incorrect"
        fi
else echo "Sorry, that username does not exist"
fi

When I run it and enter 'wayne', it says the username doesn't exist. Thanks in advance!
# 2  
Old 03-11-2011
-eq and others like that are used to compare two numeric variables,if you wanna compare two strings,use "=" and "!="

Last edited by homeboy; 03-11-2011 at 08:37 AM..
This User Gave Thanks to homeboy For This Post:
# 3  
Old 03-11-2011
Quote:
Originally Posted by cabaiste
Code:
#!/bin/sh
name="wayne"
password="12345"
echo "Hello, what is your name?"
read enteredname
clear
if [ "$enteredname" = "$name" ];then
        echo "Hi $name, what is your password?"
        read enteredpassword
        clear
        if [ "$enteredpassword" = "$password" ];then
                echo "Welcome $name, your username and password are correct!"
        else echo "Sorry $name, that password is incorrect"
        fi
else echo "Sorry, that username does not exist"
fi

This User Gave Thanks to danmero For This Post:
# 4  
Old 03-11-2011
I see! Thanks very much lads!
# 5  
Old 03-11-2011
It will also work like this:
Code:
if [[ "$enteredname" -eq "$name" ]]

In sh, dash and bash.

Last edited by AlphaLexman; 03-11-2011 at 05:53 PM.. Reason: Quote to code tags
# 6  
Old 03-12-2011
@AlphaLexman

double brackets do not work in strict Posix sh nor in dash. Also that construction would require == instead of -eq and you could leave out the double quotes on the left side.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Convert Update statement into Insert statement in UNIX using awk, sed....

Hi folks, I have a scenario to convert the update statements into insert statements using shell script (awk, sed...) or in database using regex. I have a bunch of update statements with all columns in a file which I need to convert into insert statements. UPDATE TABLE_A SET COL1=1 WHERE... (0 Replies)
Discussion started by: dev123
0 Replies

2. Red Hat

Help me please i am beginner

i have windows 8 host on Dell Laptop vmware 9 redhat 7.2 iso downloaded through redhat official site after installation on vm it only boots into text dont show graphics Please guide:( (1 Reply)
Discussion started by: hananabbas
1 Replies

3. Shell Programming and Scripting

Beginner looking for help

Hello, I am trying to write a script that reads names from a file called input, removes names if they have the same letter next to each other and prints the others. e.g. Colin & John would be printed Garry & Lynn would be removed My thinking is that I read in each name and... (3 Replies)
Discussion started by: colinireland
3 Replies

4. UNIX for Dummies Questions & Answers

Beginner - What Should I Do First?

Hi people.... I have just started to learn unix.I want to know which version of Unix to install plus how to install it.I need to practise and make myself aware of how unix works.My thread is from an educational point of view.Also please feel free to give your suggestions as I am... (3 Replies)
Discussion started by: amit.kanade1983
3 Replies

5. Shell Programming and Scripting

Beginner Help

I need to write a script to test a nsort c program. I have written 8 .txt files with different cases. Also 8 .txt files with expected outcome. The shell I have written always "test pass" for the first case but always "fail" for the rest... Here is a portion of my code (as I still don't know how to... (5 Replies)
Discussion started by: thibodeau
5 Replies

6. UNIX for Dummies Questions & Answers

Beginner Help

hi guys, i have a DEl xps laptop cor 2 duo 2.2 i have vista installed on it i want to install a dual Boot UNIX on it.. can some one guide me ...cause i m tottaly new to UNIX i want to install unix on that laptop along with Vista.... thx any help would be deeply appreciated (sorry if i... (5 Replies)
Discussion started by: Farhan082
5 Replies

7. Shell Programming and Scripting

How is use sselect statement o/p in insert statement.

Hi All, I am using Unix ksh script. I need to insert values to a table using the o/p from a slelect statement. Can anybody Help! My script looks like tihs. ---`sqlplus -s username/password@SID << EOF set heading off set feedback off set pages 0 insert into ${TB_NAME}_D... (2 Replies)
Discussion started by: nkosaraju
2 Replies

8. Shell Programming and Scripting

If statement - How to write a null statement

In my ksh script, if the conditions of a if statement are true, then do nothing; otherwise, execute some commands. How do I write the "do nothing" statement in the following example? Example: if (( "$x"="1" && "$y"="a" && "$z"="happy" )) then do nothing else command command fi... (3 Replies)
Discussion started by: april
3 Replies

9. Programming

Beginner C

Anyone know where I can get started in C++ programming in unix? Any good free tutorials or websites to start at? I am okay in unix scripting but have never done c programming of any sort... What are the main advantages of using C++ ? (2 Replies)
Discussion started by: frustrated1
2 Replies

10. Shell Programming and Scripting

Please help. I am a beginner.

Alrigt, I need to write a shell script where it counts the number of folders and files and dispays "My home directory has 'x' files and 'y' directories." So, I was thinking of doing this. set x = `ls | wc` so, if I have 8 files and folders in my home directory, x is not 8. now, I was... (1 Reply)
Discussion started by: Lykathea Aflame
1 Replies
Login or Register to Ask a Question