Visit Our UNIX and Linux User Community


Unexpected end of file..with csh->tcsh


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Unexpected end of file..with csh->tcsh
# 1  
Old 12-30-2007
Question Unexpected end of file..with csh->tcsh

All;

Thanks for reading.
I'm having a heck of a time with this cshell script that fires off an hp temperature monitor and rotates logs.
I keep getting
'/opt/temperature/temp.sh: line 22: syntax error: unexpected end of file'

when I try to 'sh /opt/temperature/temp.sh" it

--script begin-------------
#!/bin/csh -f
set tempFile = /tmp/tempfile.log #don't change this
set outfile = /opt/temperature/temperature.log
set sleeptime = 600
set maxNumLines = 24000 # maximum number of lines in the log file
set desNumLines = 18000 # desired number of lines in the log file
while (1 == 1);
do
echo `date` >> ${outfile}
/sbin/hplog -t >> ${outfile}
echo "" >> ${outfile}
sleep ${sleeptime}
set numLines = `wc -l ${outfile}|awk '{print $1}'`
if ( ${numLines} > ${maxNumLines} ); then
tail -${desNumLines} ${outfile} > ${tempFile}
mv ${tempFile} ${outfile}
endif
done

--script end-------------


Cheers..I'm sure its just a newbie error..
# 2  
Old 12-30-2007
you cannot run a cshell script through a bourne shell interpreter.

run
Code:
csh /opt/temperature/temp.sh

or
Code:
/opt/temperature/temp.sh

# 3  
Old 12-30-2007
Hi.

There are several Bourne shell constructs (syntax elements) that are mixed into a csh script.

Here is a version that ran through to the end. I commented out some illegal statements and added correct versions. Some assignments were made innocuous, and some statements were prefixed by echo so that I could run the entire script. Change those back for your system:
Code:
#!/bin/csh -f
# set tempFile = /tmp/tempfile.log #don't change this
# set outfile = /opt/temperature/temperature.log
set tempFile = t1
set outfile = t2
# set sleeptime = 600
set sleeptime = 1
set maxNumLines = 24000 # maximum number of lines in the log file
set desNumLines = 18000 # desired number of lines in the log file
# while (1 == 1);
while (1 == 1)
# do
echo `date` >> ${outfile}
# /sbin/hplog -t >> ${outfile}
echo /sbin/hplog -t >> ${outfile}
echo "" >> ${outfile}
sleep ${sleeptime}
set numLines = `wc -l ${outfile}|awk '{print $1}'`
# if ( ${numLines} > ${maxNumLines} ); then
if ( ${numLines} > ${maxNumLines} ) then
  tail -${desNumLines} ${outfile} > ${tempFile}
  mv ${tempFile} ${outfile}
endif
# done
end

Best wishes ... cheers, drl

---

Standard advice: avoid using csh family for scripting, use Bourne family shells instead.

Last edited by drl; 12-30-2007 at 08:31 PM..
# 4  
Old 12-31-2007
Lightbulb Thanks...

All!

As is apparent, my shell skills are preety bad, but I inherited this baby, so..

Maybe I will re-do it as a bash script..

Thanks again and Happy New Year to all

Previous Thread | Next Thread
Test Your Knowledge in Computers #552
Difficulty: Medium
If variable i has the value 10, after x = 5 + (++i); the value of x after this code is 15.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Csh/tcsh : Check the file existance and run the script

Hi, I've to wait until a file generated and once its generated, source another script in Linux terminal. Please help me as this is very very urgent. The code should be something like if ( -e "/abc/xyz/a.txt ) source aaa.csh else sleep This should be repeated till the if... (4 Replies)
Discussion started by: kumar_eee
4 Replies

2. Shell Programming and Scripting

unexpected end of file

I dont know where I missed the double quotes .:wall:pls review this code and help me out . m1: line 26: unexpected EOF while looking for matching `"' m1: line 34: syntax error: unexpected end of file echo "script is created by prabhu Kumar "; echo "changing the directory to wes... (2 Replies)
Discussion started by: ptappeta
2 Replies

3. Shell Programming and Scripting

Unexpected end of file error

Hi , I am new to Unix and this is my first shell script . I am facing "unexpected end of file error" while executing my code . tried removing blank spaces Unable to trace out the error . PLease help !!! #!/bin/sh echo hello if ] echo hi then var=`cat liq_table_nm.txt` ... (6 Replies)
Discussion started by: sen180185
6 Replies

4. Shell Programming and Scripting

Unexpected end of file

Hi, On adding below code to my script shows the error on executing else script works fine. sqlplus $user_name/$password <<EOL truncate table order; commit; truncate table order_hist; commit; insert into order(ID,TRAN,CUST_NAME,OPT_VAL) select * from order_bkp; insert into... (5 Replies)
Discussion started by: milink
5 Replies

5. Shell Programming and Scripting

Unexpected end of file, why?

I am getting a "line 47: syntax error: unexpected end of file", why? According to my estimate, line 47 is 2 lines after the last line of code here. Also, the $1 variable represents the current user logging in, and the script runs with root privileges (This is a Mac OS login hook script using... (5 Replies)
Discussion started by: glev2005
5 Replies

6. Shell Programming and Scripting

'end of file' unexpected

HELP PLEASE!! I am running this script, and i keep getting the error 'end of file' unexpected. I know that usually means parenthesis or whatever is out of place but i cant find anything!! I am new to scripting and i put some "print" staements in and it is not getting past the first IF statment... (7 Replies)
Discussion started by: weatherman0516
7 Replies

7. Shell Programming and Scripting

'end of file' unexpected

HI, I was converting a .bat file to .sh file for unix Code snippet #!/usr/bin/sh set -x if then goto RegularBuild; CURDIR="$1"; cd "$CURDIR"; :RegularBuild echo "Checking for existing fip_help.properties in def/properties directory..." if then rm -f fip_help.properties; ... (1 Reply)
Discussion started by: srisreeku
1 Replies

8. Shell Programming and Scripting

end of file unexpected

hi i have error like this' syntax error end of file unexecpeted.and give me the example of cut command as soon as possible: (1 Reply)
Discussion started by: naveeng.81
1 Replies

9. Shell Programming and Scripting

unexpected end of file

This is the script path=/oracle/ora10gdb/sample archive=/oracle/ora10gdb/archive cd $path for i in `ls`;do mv $i $archive Done Please tell me why it is givind this error (2 Replies)
Discussion started by: dineshr85
2 Replies

10. Shell Programming and Scripting

'end of file' unexpected

what do u mean by " 'end of file' unexpected "? i am running a script called "s1" which internally calls "s2" now s1 starts running & at a point (where it is suppose to call "s2") i get a message 'end of file' unexpected.... & my script(s) are not working.. any ideas on this? regards... (4 Replies)
Discussion started by: abhijeetkul
4 Replies

Featured Tech Videos