Visit Our UNIX and Linux User Community


FTP script error


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting FTP script error
# 1  
Old 07-22-2009
FTP script error

This question has been answered many times. I tried to use some examples. Here is the error and cannot find the reason. Please help!

messages :
40
step1
step2
arcfile1.sh: line 55: syntax error: unexpected end of file Smilie



here is the script:
Code:
#!/bin/bash
DATE=`date +%Y%m%d`
TIME=`date +%H%M%S` 
LOGFILE="process$(date '+%y%m%d')"
mFile="/name1/name2/name3/"
 
# Count files
ls -1 $mFile >> $LOGFILE.log
file_ctr=`egrep -cv '#|^$' /name1/name2/$LOGFILE.log` 
echo "$file_ctr"
 
echo "step1"
# User and host info
HOST='host.com'
FTPUSER='user'
PASSWD='password'
 
# Upload to ftp - ftp.log - all ftp messages 
echo "step2"
while read line
do 
 
echo "step3"
#Start FTP session 
ftp -v -n $HOST > /name1/name2/name4/ftp.log <<EOF 
user $FTPUSER
pass $PASSWD 
 
#change to the correct directory 
cd name11
cd name12


#change to binary transfer mode 
bin 
prompt 
mput $line 
bye
EOF 
done </name1/name2/$LOGFILE.log
ftp_ctr=`cat /name1/name2/name4/ftp.log | grep 226 | wc -l`  
if [ "$ftp_ctr" = "$file_ctr" ]; then
echo "No Error"
echo "List of transferred files:" >> ./transfer.txt
else
echo "Error has occured"
echo "List of transferred files:" >> ./error.txt
fi


Last edited by Lenora2009; 07-22-2009 at 04:17 PM.. Reason: code tags, PLEASE!
# 2  
Old 07-22-2009
The usual problems are:

1) Script file transferred from Windows platform without proper conversion of the line terminators.
Check with:
sed -n l script_filename

2) The line containing just "EOF" does not start in column one.
(Hard to tell because you have not used code tags).

3) Missing quotes ... like this line:

Quote:
HOST=host.com'
# 3  
Old 07-22-2009
methyl,
I appreciate your quick response thank you , but

1. all files and the scrip are placed in UNIX folder

2. the ftp section works fine if it is not in ‘while do done’ loop

3. HOST ='host.com' is OK in the script..
# 4  
Old 07-22-2009
This is strange, but when I changed EOF to ! it worked!

(bearing in mind that I had to change some things to get it to run anyway).

Don't understand that!


Update: No. I'm talking rubbish! I must have changed something else. I'm on it! Smilie

---------- Post updated at 08:04 PM ---------- Previous update was at 07:55 PM ----------

Hi.

OK.

You have a space after the closing EOF!
# 5  
Old 07-22-2009
Back to

Code:
sed -n l script_filename

There are spurious trailing space characters on many lines in the script (many of which do not matter). The one on the "EOF" line is causing the main problem.

Also are there two concurrent inward redirects?
# 6  
Old 07-22-2009
You mean one for the while loop and one for the ftp?

Then I suppose there is. But the ftp one is being fed by the garb between the EOF's, no?

I didn't test it to that level, but if that's a problem, it's nothing an exec couldn't fix.
# 7  
Old 07-22-2009
To keep the forums high quality for all users, please take the time to format your posts correctly.

First of all, use Code Tags when you post any code or data samples so others can easily read your code. You can easily do this by highlighting your code and then clicking on the # in the editing menu. (You can also type code tags [code] and [/code] by hand.)

Second, avoid adding color or different fonts and font size to your posts. Selective use of color to highlight a single word or phrase can be useful at times, but using color, in general, makes the forums harder to read, especially bright colors like red.

Third, be careful when you cut-and-paste, edit any odd characters and make sure all links are working property.

Thank You.

The UNIX and Linux Forums

Previous Thread | Next Thread
Test Your Knowledge in Computers #999
Difficulty: Easy
The trusted computing base (TCB) of a computer system is the set of all hardware, firmware, and/or software components that are critical to its security.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script FTP maintain error handling

Hi, I have ftp script like below How to insert an error handling, If the transfer failed then send mail to me. Actually, I just need the script to send an email if the FTP failed. How to put the email script within FTP script? Thank You Edy (5 Replies)
Discussion started by: edydsuranta
5 Replies

2. Shell Programming and Scripting

Help with FTP Script which is causing "syntax error: unexpected end of file" Error

Hi All, Please hav a look at the below peice of script and let me know if there are any syntax errors. i found that the below peice of Script is causing issue. when i use SFTP its working fine, but there is a demand to use FTP only. please find below code and explain if anything is wrong... (1 Reply)
Discussion started by: mahi_mayu069
1 Replies

3. Shell Programming and Scripting

ftp script error

Hi , I was writing a bash script of ftp to transfer the files , rite now I am considering my local server as ftp server and through keygen -ssh I ahve generated the public & private keys , the private key I have kept in the folder named scripts where my all scripts resides and the public key... (6 Replies)
Discussion started by: rahul125
6 Replies

4. AIX

FTP Script error - AIX

Hi, I'm trying to create a ftp script so I can make an ftp connection and start upload and download files from/to remote servers. In this case I want to start a connection (crontab) and transfer files from localserver1 to remoteserver; remoteserver to localserver1; finally from localserver1... (3 Replies)
Discussion started by: marques_rmc
3 Replies

5. Shell Programming and Scripting

end of file error bash ftp script

Hello kind programmers :) I am a newbie and running into an error "line 28: syntax error: unexpected end of file" on the script shown below. Any help would be greatly appreciated. Thanks! #! /bin/bash if ($#argv <3) then echo 'Usage get_modis_snow ' echo 'ftp script for MYD10A2... (2 Replies)
Discussion started by: cmshreve
2 Replies

6. Shell Programming and Scripting

FTP script error in BASH

Hi All, I have a script which is supposed to connect to Windows machine and FTP a file into LINUX. Script is like below #!/usr/bin/sh ParamterFle=${1} //grepping all parameters BossFtpLog=${2} // assigning log file ftp -i -n host_name << EOF user1 password1 cd /drive1/drive2 get... (6 Replies)
Discussion started by: Raamc
6 Replies

7. Shell Programming and Scripting

Does not exist or unreadable error in windows ftp script

I have a file like this 07200900.SUP,in a windows directory I need to FTP this file to UNIX , the directory in unix is N:\orgs\Financial Aid\MIIS\0910\FTP I am getting this error miis_ftp.ELM_SUP.shl: =cd orgs/"Financial Aid"/"MIIS"/"0910"/"FTP" : not found IN THE LOG FILE Activities for Mon... (3 Replies)
Discussion started by: rechever
3 Replies

8. Shell Programming and Scripting

FTP script error

Hi all, I am trying to run a FTP script which would go to diff servers in the environment and get the request logs and I am getting the following error, Please let me know. server1.ou.st.com (to) usage: open host-name Not connected. Local directory now /home/pk960/logs Not connected.... (0 Replies)
Discussion started by: crosairs
0 Replies

9. Shell Programming and Scripting

FTP shell script error caturing

Hello All, Can anyone let me know how to capure errors in shell scripting? n even the error considerations? Like -- - File not found what other errors can occure in that n how those could be captured? Im_new (6 Replies)
Discussion started by: im_new
6 Replies

10. UNIX for Dummies Questions & Answers

Error in execting ftp script

Please find the below script: #!/bin/ksh host='gskprod.xyz.com' USER='gsk' PASSWORD='ahdpw1' remote_dir='gsk_ds' ftp -n "${host}" user $USER $PASSWORD binary cd $remote_dir mget *.txt mdelete *.txt bye It does not recognizes userid and password. It executes... (4 Replies)
Discussion started by: jhmr7
4 Replies

Featured Tech Videos