Alternative for goto


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Alternative for goto
# 1  
Old 10-22-2013
Alternative for goto

Code:
 
#!/bin/sh
label:
echo sql poll
 v=`sqlplus -s <<!
 HR/HR
 set pages 0 echo off feed off
 select distinct status from
 emp
 where
 id=5;
 !
 `
echo $v;
echo it comes here after false
if [ "$v" -eq 4 ]
then
echo if condition true
sqlplus -l scott/tiger <<EOF
select * from department;
EXIT
EOF
else
   sleep 30;
   goto label
fi


If the condition fails in the above script then it needs to sleep for 30 seconds then go to label and poll the database tabel. I read there is no goto in bourne shell so i tried to use other options like funtions but i could not finish this task. can someone help me to fix this. I tried like below . I am a absolute beginner in shell script so couldnot catch the concepts well.Thanks for your help in advance

Code:
 
#!/bin/sh
start(){
echo sql poll
 v=`sqlplus -s <<!
 HR/HR
 set pages 0 echo off feed off
 select distinct status from
 emp
 where
 id=5;
 !
 `
echo $v;
}
rval=start
if [ "$rval" -eq 4 ]
then
echo if condition true
sqlplus -l scott/tiger <<EOF
select * from department;
EXIT
EOF
else
   sleep 30;
   start
fi

# 2  
Old 10-22-2013
Instead of a goto you could use something like this:
Code:
start() {
.....
}

while :
do
  rval=`start`
  if [ "$rval" -eq 4 ]
  then
    echo if condition true
    sqlplus -l scott/tiger <<EOF
    select * from department;
    EXIT
EOF
    break
  else
     sleep 30
  fi
done

In your start function the second ! should be at the first character position on the line or it will not work..

Are you sure it is Bourne Shell, are you on Solaris, otherwise /bin/sh is likely a POSIX shell which allows or a less restrictive syntax.
This User Gave Thanks to Scrutinizer For This Post:
# 3  
Old 10-22-2013
Thanks a lot. It worked great.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

A dash to GOTO or a dash from GOTO, that is the question...

Well, guys I saw a question about GOTO for Python. So this gave me the inspiration to attempt a GOTO function for 'dash', (bash and ksh too). Machine: MBP OSX 10.14.3, default bash terminal, calling '#!/usr/local/bin/dash'... This is purely a fun project to see if it is possible in PURE... (3 Replies)
Discussion started by: wisecracker
3 Replies

2. Shell Programming and Scripting

Goto - UNIX v6 Manual Questions

Hey :) I am trying to understand the command goto. I have some questions regarding the goto manual. 1.What does the underlined part mean? I'm not allowed to type goto in the shell? But if goto is written into a file everything is okay? 2.So if a part of my file looks like this ... goto... (8 Replies)
Discussion started by: orbit
8 Replies

3. Shell Programming and Scripting

How to use GOTO stmt in Unix scripting?

my code does somthing like this: #!bin/ksh sqlplus / | While read id do temp=`echo $id` i = i+1 done j=0 while do --connecting to sql and executing a Stored proc for 1st id --checking for the status status = $? if error --need to... (1 Reply)
Discussion started by: RP09
1 Replies

4. Shell Programming and Scripting

Using A Goto Label?

Im trying to do something like this but I cant find any documentation. read X if then goto ThisLine fi OTHER CODE OTHER CODE Label: ThisLine echo "You entered 1" (5 Replies)
Discussion started by: Grizzly
5 Replies

5. Solaris

Goto last visted directory

Dear All, Can any one pls let me the command for how to goback to previous visited directory from the current working directory in SunOS ? In case of HP-UX; the same can be resolved through "cd -" command. Thanks in advance! Prasanth Babu. (6 Replies)
Discussion started by: prasanth_babu
6 Replies

6. UNIX for Dummies Questions & Answers

Stuck after typing goto

uname -a returns: SMP Tue May 17 17:52:23 EDT 2005 i686 athlon i386 GNU/Linux I have many aliases beginning with "goto" so... if I type goto and then hit return (oops) A goto prompt pops up and I cant exit from it(I tried MANY key seqs) The only way to exit is to kill the term window... (2 Replies)
Discussion started by: rairey
2 Replies

7. Shell Programming and Scripting

goto statement

I have a test script for using goto statement but its not working. please help i tried both in linux and hp-ux it's not working please help #! /bin/ksh t=`ps -ef|grep ti.sh|grep -v grep` if ; then goto start else goto stop fi start: echo "start" stop: echo "stop" (5 Replies)
Discussion started by: Krrishv
5 Replies

8. Shell Programming and Scripting

Use of GOTO statement in scripts

Hey Guys.. I just want to know how to use Goto statement in shell scripts. I know the basic use of statement. Goto Label The above statement will search for some label which must be defined in the script itself as: label: I tried these combinations but I didn't work out for me and I'm... (7 Replies)
Discussion started by: vikasduhan
7 Replies

9. Shell Programming and Scripting

GOTO LOOP in KORNE SHELL

All Please help to provide "goto" functionality in KORN shell script. ex: 1: Command Process some command if check some variable true goto 1 else process some other Please help to implement this example in korne... (1 Reply)
Discussion started by: DeepakXavier
1 Replies

10. Shell Programming and Scripting

how to goto in ksh

Hi, I'm trying to use the goto in ksh but it does not appear to be a valid command. Is that only valid in csh? Anything similar in ksh that I can use? Appreciate any help you can provide. Thanks. geraldine (4 Replies)
Discussion started by: Geraldine
4 Replies
Login or Register to Ask a Question