Unmatched 'then'


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Unmatched 'then'
# 8  
Old 09-04-2001
Try this,

if [ conditions ] <b>;</b>
then
commands......
fi
# 9  
Old 09-04-2001
Thanks, but I am still getting the same error. I have tried the semicolon's just about every which way I can.

Amber Taylor
# 10  
Old 09-04-2001
Semi's

Amber,

Get of rid of all your semicolons - except the ones in the 'here' statement and put all your commands on a separate line. There's no man page for 'if' as it is not an external command but rather a shell built-in.
# 11  
Old 09-04-2001
A couple of things...

First, remove the ";" after the "fi"
also, if $all_recs is from the command line,
I assume you are assigning it...

export all_recs=$1


Second, try changing:
sqlplus -s $connect_string > /dev/null << EOF

to:
sqlplus -s $connect_string << EOF > /dev/null

...the second part should not have anything
to do with the "unmatched then" but it may cause
you execution problems. Additionally, the "if"
command is a shell built-in and would be
documented in the KSH(1) man page (assuming you
are using ksh (just man the shell you use).
# 12  
Old 09-04-2001
Thank you all for taking the time to help me with this.

I am using ksh.

Everthing inside the if statement worked before I tried to enclose it in the if statement.

I did assign the variable and tested it with an echo.

Also, I have tested it a few times without the ';' after the fi and still it wont work.

The line listed in the syntax error corresponds to the 'then' line number in the snippets above.

The only ;'s remaining (besides the one at the end of the if line) are the ones inside the sqlplus routine.
# 13  
Old 09-04-2001
Double quotes

Then there must be double quotes missing for your here doc:

Try:

<< "EOF

and

EOF"

I am not 100% sure about the exact placement of the first double quote though...
# 14  
Old 09-04-2001
What do you mean by "here doc"?

Thanks,

Amber Taylor
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

What are the differences between 'bash' and 'sh'

Hopefully this doesn't come off as too much of a "newbie" question or a flamebait. But I have recently begun working with a Sun Solaris box after having spent the past five years working with RedHat. From what i can tell, thing look fairly similar and the 'man' command is some help. But I've... (7 Replies)
Discussion started by: deckard
7 Replies

2. UNIX for Advanced & Expert Users

How to remove a file with a leading dash '-' in it's name?

Somehow someone created a file named '-ov' in the root directory. Given the name, the how was probably the result of some cpio command they bozo'ed. I've tried a number of different ways to get rid of it using * and ? wildcards, '\' escape patterns etc.. They all fail with " illegal option --... (3 Replies)
Discussion started by: GSalisbury
3 Replies

3. Email Antispam Techniques and Email Filtering

Procmail recipe: blocking 'unsubscribe and opt-out' messages....

Here is a crude procmail recipe that I quickly created (NOT a procmail recipe expert, btw) that has been catching lots of spam (current second after the charset_spam recipe posted earlier): :0B * .*If.you.do.not.wish.to.receive...* more_spam :0B * You.requested.to.receive.this.mailing... (0 Replies)
Discussion started by: Neo
0 Replies

4. IP Networking

BELKIN 'F5D5020' 16bit PCMCIA - FreeBSD HOWTO

Hey all, I've bought a few bits from Belkin who seem quite happy to support FreeBSD! Last time I bought a UPS from them and it's still going well :D I saw this on their website that the 16bit PCMCIA card was supported under FreeBSD: http://www.belkin.com/network/F5D5020.html I went to my... (0 Replies)
Discussion started by: WIntellect
0 Replies

5. UNIX for Dummies Questions & Answers

quoting echo 'it's friday'

echo 'it's friday' why appear the > (3 Replies)
Discussion started by: yls177
3 Replies

6. Filesystems, Disks and Memory

HELP! The '/var/adm/message' file increase every few seconds???

Hi, guys, I have a big problem. I've got a sun solaris 4.1.4 workstation, and the /var/adm/message file will add one row every few seconds. It soon becomes a large file. I wander if there are some mistakes configuring the workstation. the /var/adm/message is as follow: ... (1 Reply)
Discussion started by: cloudsmell
1 Replies

7. UNIX for Advanced & Expert Users

Terminal 'Local Echo' lost on Modem Dial-out

Can anybody help me? I am developing a utility for automating message paging to a BT alphanumeric pager. I am using a USR 56K Fax-modem connected to /dev/cuab on a Sun Ultra-10. I am using the UNIX 'tip' utility to connect to the modem and I have configured the modem as follows: Baud Rate:... (2 Replies)
Discussion started by: mybeat
2 Replies

8. Shell Programming and Scripting

Clearify what it means under 'WHAT' when hit the 'w'-command

I wonder how I shall read the result below, especially 'what' shown below. The result was shown when I entered 'w'. E.g what is TOP? What is gosh ( what does selmgr mean?)? login@ idle JCPU PCPU what 6:15am 7:04 39 39 TOP 6:34am 6:45 45 45 TOP 6:41am ... (1 Reply)
Discussion started by: Aelgen
1 Replies

9. Programming

i can't use 'make' in my computer?

I need to compile a file,but 'make' does not work.please tell me how to use it or need which tools? (3 Replies)
Discussion started by: dsun5
3 Replies

10. UNIX for Dummies Questions & Answers

How to subtract 2 hours from 'date' in shell ( /bin/sh ) script ?

I write a sh script that zip and copy to tape all files that older then 2 hours. 1. The way I choose is - touch a file with "now - 2 hours", then use fine with '! -newer' 2. Do you have any other idea to do it ? tnx. (1 Reply)
Discussion started by: yairon
1 Replies
Login or Register to Ask a Question