Problem with this script!


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Problem with this script!
# 1  
Old 05-04-2008
Problem with this script!

Hi guys!

I am using UBUNTU and therefore the BASH shell. I have an assignment for school and I just had to copy this script from the book and run it:

MAybe this problem occurs because I am using UBUNTU and it has some quirks btw...

Code:
trap "rm~/tmp/* 2> /dev/null; exit" 0 1 2 3
phonefile=~/source/corp_phones
looptest=y
while test "$looptest" = "y"
do
    clear
    tput cup 1 4; echo "Corporate Phone List Additions"
    tput cup 2 4; echo "=============================="
    tput cup 4 4; echo "Phone Number: "
    tput cup 5 4; echo "Last Name   :"
    tput cup 6 4; echo "First Name  :"
    tput cup 7 4; echo "Middle Init :"
    tput cup 8 4; echo "Dept#       :"
    tput cup 9 4; echo "Job Title   :"
    tput cup 10 4; echo "Date Hired:"
    tput cup 12 4; echo "Add another? (y)es or (q)uit: "
    tput cup 4 18; read phonenum
    if test "$phonenum" = "q"
    then
         clear ; exit
    fi

    tput cup 5 18 ; read lname
 while test "$lname" = "-"
    do
        tput cup 4 18 ; echo "                      "
        tput cup 4 18 ; read phonenum
 28       if test "$phonenum" ="q"
        then
           clear ; exit
        fi
        tput cup 5 18 ; read lname
   done
   tput 6 18 ; read fname
   while test "$fname" = "-"
   do
     tput cup 5 18; echo "            "
     tput cup 5 18; read lname
     if test "$lname" = "q"
     then
         clear ; exit
     fi
     tput cup 6 18 ; read fname
   done
   tput cup 7 18 ; read midinit
   while test "$midinit" = "-"
 do
       tput cup 6 18 ; echo "         "
       tput cup 6 18; read fname
       if test "$fname" = "q"
       then
          clear ; exit
       fi
       tput cup 7 18; read midinit
   done
   tput cup 8 18 ; read deptno
   while test "$deptno" = "-"
   do
      tput cup 7 18 ; echo "          "
      tput cup 7 18 ; read midinit
      if test "$midinit" = "q"
      then
         clear ; exit
      fi
      tput cup 8 18 ; read deptno
      done
 tput cup 9 18 ; read jobtitle
      while terst "$jobtitle" = "-"
      do
         tput cup 8 18 ; echo "            "
         tput cup 8 18 ; read deptno
         if test "$deptno" = "q"
         then
            clear ; exit
         fi
         tput cup 9 18 ; read jobtitle
      done
      tput cup 10 18 ; read datehired
      while test "$datehired" = "-"
      do
         tput cup 9 18; echo "          "
         tput cup 9 18; read jobtitle
         if test "$jobtitle" = "q"
         then
             clear ; exit
         fi
         tput cup 10 18 ; read datehired
         done

if test "$lname" !=""
then
        echo "$phonenum:$lname:$fname:$midinit:$deptno:$jobtitle:$datehired" >> $phonefile
fi
tput cup 12 33; read looptest
if test "$looptest" = "q"
then
    clear ;exit
fi
done

Where I have marked the 28 is where the program crashes: it says UNARY OPERATOR EXEPCTED. The solution to this problem I found is to put the variable in double quotes but I already have it in double quotes! Can someone please tell me how to solve this problem in UBUNTU?
# 2  
Old 05-04-2008
Please read the rules:

(6) Do not post classroom or homework problems.


I will close this thread. But your problem is that you need spaces surrounding that equals sign.
if test "$phonenum" = "q"
not
if test "$phonenum" ="q"
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Problem in calling a script inside a script

Hi team, I have a script in different folder. Now i want to call that script and execute that script from that path alone. My code is #!/bin/bash wname=yahoo PATH='/opt/IBM' wac=`/usr/bin/ls $PATH | /usr/bin/grep "$wname"` STOP=`/usr/bin/find $PATH/$wac -type f -name "stop.sh"`... (8 Replies)
Discussion started by: natraj005
8 Replies

2. Shell Programming and Scripting

Shell script newbie, what is problem with my script?

Hello, Ubuntu server 11.10 can anybody help what is problem with my shell script? #!/bin/bash #script to find out currently logged on user is root or not. if ] then echo "You are super" else echo "You are awesome!" fi When I run script, I get following output ./uid: line 3: I... (4 Replies)
Discussion started by: kaustubh
4 Replies

3. Shell Programming and Scripting

Problem while calling a script within a script

Hi , I have moduled my scripts in three scripts . From First script i am calling second and from second i am calling third for some check . Problem is with the third script call. ---In second script EXP ='test.\abc.\Server.*abc.xml.*' pid=$($HOME/bin/checkpid $EXP) --Third... (2 Replies)
Discussion started by: amrishn
2 Replies

4. Shell Programming and Scripting

Problem running a program/script in the background from a script

Hi all, I have a script that calls another program/script, xxx, to run in the background. Supposedly this program at most should finish within five (5) minutes so after five (5) minutes, I run some other steps to run the script into completion. My problem is sometimes the program takes... (5 Replies)
Discussion started by: newbie_01
5 Replies

5. Shell Programming and Scripting

Problem with a script

Hi everyone, I got a problem with a script. What it's supposed to do is: to take as arguments a directory name <dir> and a dimension (in byte) <dim>; if <dir> exists, to write name and dimension of every regular file within it that sizes lesser than <dim> in regFileList. Nothing happens... (10 Replies)
Discussion started by: Luke Bonham
10 Replies

6. UNIX for Dummies Questions & Answers

Problem with script

Hello All. I have a script that is suppossed to start up a daemon but when executed, simply hangs. Could you please take a look and let me know where the problem might be? TIA ################################################################### # # SCRIPT: dstart3000.sh # Bring up the Domain... (6 Replies)
Discussion started by: grin1dan
6 Replies

7. Shell Programming and Scripting

call shell script from perl cgi script problem

hi,, i have perl scipt with line : system('./try.sh $t $d $m'); in shell scipt try.sh i have the line: echo $1 its not printing value of $t that i hav passed..y is it so..i am running it from apache web server (2 Replies)
Discussion started by: raksha.s
2 Replies

8. Shell Programming and Scripting

ssh script problem problem

Hi Please help me with the following problem with my script. The following block of code is not repeating in the while loop and exiting after searching for first message. input_file ========== host001-01 host001-02 2008-07-23 13:02:04,651 ConnectionFactory - Setting session state... (2 Replies)
Discussion started by: pcjandyala
2 Replies

9. Shell Programming and Scripting

Help. Script problem

hey guys. i have a bunch of programs in a script that needs to run as root and the rest as another user, we'll call him gabriel. now, in this script, i want to run the first few lines as root. now, how do i, after running as root, tell the script to run the remaining lines as the user gabriel?... (3 Replies)
Discussion started by: Terrible
3 Replies

10. UNIX for Dummies Questions & Answers

Problem starting a script from a 'main'-script

Please Help! :o I have a main script (ksh) where another script is called (convert_picture). Normally this works ok, but since some changes has been made on the unix-server (I dont know what :( ) suddenly it doesnt work anymore: i get an error message: ksh: convert_picture not found. I am... (3 Replies)
Discussion started by: Rakker
3 Replies
Login or Register to Ask a Question