unexpected EOF : BASH


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting unexpected EOF : BASH
# 1  
Old 08-12-2011
unexpected EOF : BASH

i'm writing a bash script that uploads a file to my server but it keeps saying unexpected EOF... i cannot see the problem with it, and it worked before i edited the script to work on my ipod touch as well. Here is the troublsome code...
Code:
if [ "$SYSTEM" = "Mac OS X" ]; then 
  tar -czf "file(Mac).tar.gz" "/folder" > /dev/null 2>&1
  USER="username"
  PASS='password'
  FTPSERVER="myserver.com" 
  FILE="/file(Mac).tar.gz" 
  ftp -i -n $FTPSERVER << EOF #> /dev/null 2>&1
  user $USER $PASS
  bin
  pwd
  put $FILE
  bye
  EOF
fi
if [ "$SYSTEM" = "iPhone OS" ]; then
  tar -czf "file(iPhone).tar.gz" "/var/mobile/" > /dev/null 2>&1
  USER="username"
  PASS='password'
  FTPSERVER="myserver.com" 
  FILE="/var/mobile/file(iPhone).tar.gz" 
  ftp -i -n $FTPSERVER << EOF #> /dev/null 2>&1
  user $USER $PASS
  bin
  pwd
  put $FILE
  bye
  EOF
fi

as i said, before i expanded it to include support for my ipod, it worked fine... but now it says unexpected EOF! any ideas? Much Appreciated.
# 2  
Old 08-12-2011
I believe the lines with EOFs need to start at column 1. Don't indent them. At least that is how it works in ksh.
# 3  
Old 08-12-2011
You can indent them, but only if you use the <<- operator and only if the only characters preceding the EOF (or whatever is chosen as the here-doc delimiter) are tabs.

Regards,
Alister
# 4  
Old 08-12-2011
This section worked fine, before i expanded it to allow both systems to use it...

Code:
tar -czf "file(iPhone).tar.gz" "/var/mobile/" > /dev/null 2>&1
  USER="username"
  PASS='password'
  FTPSERVER="myserver.com" 
  FILE="/var/mobile/file(iPhone).tar.gz" 
  ftp -i -n $FTPSERVER << EOF #> /dev/null 2>&1
  user $USER $PASS
  bin
  pwd
  put $FILE
  bye
  EOF

# 5  
Old 08-12-2011
DuskFall, not clear how that works.. Smilie Is it still failing after removing the indents or trying the change suggested by alister?
# 6  
Old 08-12-2011
Do you mean the indents at the beggining of the lines? ill try removing those...
# 7  
Old 08-12-2011
Yes.. Remove leading spaces/tabs in front of EOF.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Unexpected EOF while looking for matching `"'

I have a piece of Linux script. It tells me some syntax error. I couldn't find it. Please help me to identify them. Thanks. The code looks like this: export ORACLE_SID=MYDB export SPW=`cat /opt/oracle/scripts/.sys_pw_$ORACLE_SID` export check_arch=`sqlplus -s << EOF / as sysdba... (7 Replies)
Discussion started by: duke0001
7 Replies

2. Shell Programming and Scripting

eof unexpected while looking[...]

Hello I use opensuse build service to build packages (oh surprise !) I have integrate a command in a spec whose worked and now this exit with: unexpected EOF while looking for matching `"' Command: if \.").mk ]; then ln -s $(pwd)/mozilla/security/coreconf/Linux2.6.mk \ ... (5 Replies)
Discussion started by: posophe
5 Replies

3. UNIX for Dummies Questions & Answers

Unexpected EOF in .profile

When opening a new window under Terminal, got that message: Last login: Sun Oct 30 10:35:12 on ttys000 -bash: /Users/MyName/.profile: line 47: syntax error: unexpected end of file I tried several clues like using BBedit or emacs to get rid of it, nothing does. Maybe shell commands cut or... (1 Reply)
Discussion started by: shub22
1 Replies

4. Shell Programming and Scripting

Stuck with Unexpected EOF

Hi, i have a script as below. i'm using sun solaris 10. Script : #! /bin/sh load() { find /stage_area/loadfiles/telsims/test/ -type f -name "*$1" -print > /tmp/testfile.txt fc=`cat /tmp/testfile.txt | wc -l | sed 's/ //g'` if ; then echo " Files Not Avaliable" exit else... (12 Replies)
Discussion started by: apple2685
12 Replies

5. UNIX for Dummies Questions & Answers

unexpected EOF

hello everyone...im having this problem with unexpected EOF with line 85 which is..i cant see whats wrong with it..can any1 plz help me out. read -p "$p1 please enter the number of tries you wish to have:" lifeline function main() { guessnum=0 read -p "Please enter if its sinle player game... (1 Reply)
Discussion started by: Freakhan
1 Replies

6. Shell Programming and Scripting

Unexpected EOF while looking for matching `"'

Hi everyone, I am trying to search for a string in a file that is partly made up of a variable. Here's the code: echo "parentCategory = $parentCategory" echo "parentCategoryFormatted = $parentCategoryFormatted" numUrlsFoundInParentCategory=`grep -c "<Topic r:id=\"Top\/World\/Français\/"... (2 Replies)
Discussion started by: BlueberryPickle
2 Replies

7. UNIX for Advanced & Expert Users

tar:read error: unexpected EOF

I need archive data from some tar files. I use the command "tar xvf filename". For about half of the files I get the error message "tar:read error: unexpected EOF". The number of bytes extracted comes very close to the size of the tar file. An example: 972434779 Jan 10 01:01... (4 Replies)
Discussion started by: mikeruth
4 Replies

8. UNIX for Advanced & Expert Users

unexpected EOF

I ran the following scripts and everytime i get the errot as follows Line 54: unexpected EOF while looking for matching ',' line 57 syntex error unexpected end of file#!/bin/ksh set -x BKUP_DIR=/u03/backups/abu/nightly_backup LOG_FILE=/u03/backups/abu/backup.log ORACLE_HOME=... (9 Replies)
Discussion started by: manna
9 Replies

9. Shell Programming and Scripting

Unexpected eof error

Hi, I am newbie and am just trying to connect to oracle from shell script ,,,but I am getting the following error ./prog.sh: line 20: syntax error: unexpected end of file The scripts is : #!/bin/bash O=$IFS; IFS=","; while read a b c d do echo $c ... (6 Replies)
Discussion started by: thana
6 Replies

10. Shell Programming and Scripting

tar: write error: unexpected EOF

Hi friends, I am using Sun Solaris 5.9. I want to take backup of 3 folders which are 50 GB in size totally using tar command on tapes. I am having DAT 72 tape. After initiating tar command (tar -cvf /dev/rmt/0n /tmp/dir1/ /tmp/dir2/ /tmp/dir3/), tarring is stopped after 10 hrs (approx) and i am... (7 Replies)
Discussion started by: vijayakumar.pc
7 Replies
Login or Register to Ask a Question