Retry upon FTP failure


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Retry upon FTP failure
# 8  
Old 01-18-2010
I tried that also, but as soon as you give it the quit command it terminates normally, and $? is equal to zero.
# 9  
Old 01-19-2010
FTP Error checking

Hi

This is based on ksh, but the same prinicples should apply. A key thing is that successful FTP normally yields a 226 message on success *for each transferred file*.

So, this code counts the number of 226 messages in the ftp log ($FTPTEMP) against the number of files to be transferred ($FTPNUMFILES).

There is a weakness here, in that if one file transfer in a group fails, the whole group is resent on the next iteration/retry. Depinding on the action of the target machine, it is possible to find multiple copies of the same file at the target, suffixed (probably) by ".1", ".2" etc.


Assume $DELAY = num of seconds to wait before FTP retry
Assume $NUMFILES = number of files being transferred
Assume $TEMP = log file from ftp command (e.g. ftp <<END >$FTPTEMP)
Assume $LOOP = retry count (decrementing within process)
Assume $TRIES = retry count (fixed within process)
Assume $RC = general return code variable

Code:
   TRIES=$LOOP
   
   while [[ $LOOP -gt 0 ]] && [[ $RC -ne 0 ]]
   do
     ftp <<END >$TEMP
     open yourtarget
     user yourlogon
     mput yourfiles
     quit
END

     LOOP=$((LOOP-1))

   # calculate RC:  0 = success; non-0 = failure

     RC=$(($NUMFILES-$(egrep -ic "^(226 Transfer complete\.)|^(226 File receive OK\.)" $TEMP)))
     if [[ $RC -ne 0 ]]
     then
        sleep $DELAY
        rm $TEMP >/dev/null 2>&1
     fi
   done


 if [ $RC -ne 0 ]
 then
    echo "\nFTP failed after " $TRIES " attempts" 
 else
    echo "\nFTP successful"
 fi

Rgds
J
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

FTP failure

Hi, We have a external vendor (outside firewall), who used to connect our ftp server till 2 days back. I am not able to figure out, what was changed. Now he is not able to login. When I login to ftp server (from inside firewall), I am able to connect with credentials. When that vendor login... (4 Replies)
Discussion started by: solaris_1977
4 Replies

2. Shell Programming and Scripting

Script to retry FTP commands if unsuccessful and capture the failure status code.

I am using the below code to ftp file onto another server FTP_LOG_FILE=${CURR_PRG_NAME}- ${FTP_FILE}-`date +%Y%m%d%H%M%S`.log ftp -ivn ${FTP_HOST} ${FTP_PORT} << ENDFTP >> ${EDI_LOG_DIR}/${FTP_LOG_FILE} 2>&1 user ${FTP_USER} ${FTP_PSWD} lcd... (2 Replies)
Discussion started by: akashdeepak
2 Replies

3. Shell Programming and Scripting

If then else - Retry operation

I need to read a file line by line, then depending on the contents of each line, type in a code that will get written to an array. The problem I have is when I ask the user to confirm the input code, if it is wrong, how do i Return to ask again? Any thing I try increments the file to the next... (6 Replies)
Discussion started by: kcpoole
6 Replies

4. UNIX for Dummies Questions & Answers

boot up failure unix sco after power failure

hi power went out. next day unix sco wont boot up error code 303. any help appreciated as we are clueless. (11 Replies)
Discussion started by: fredthayer
11 Replies

5. Shell Programming and Scripting

FTP failure with different scenario

Hi Gurus the below FTP code works fine, but the issue is from past 1 week couldn't able to send the files to external system. #--------------------------------------------------------------------# #Start the ftp session #--------------------------------------------------------------------#... (3 Replies)
Discussion started by: SeenuGuddu
3 Replies

6. IP Networking

FTP failure due to network problem

Hi, I've been searching through out this forum to find the exact message when during the on-going FTP, suddenly the network went down but i cannot find some. Could anyone provide me the exact return codes when FTP failed during FTP or prior to FTP the network went down and you still proceeded to... (3 Replies)
Discussion started by: vibora
3 Replies

7. IP Networking

Automate FTP process and autorestart on link failure

Hi Guys, i have this lil challenge; i am to implement an automated script that searches/scans a directory for files then picks and sends this files to a very remote server via an ftp link. the challenge here is that the ftp link fails due to netwrk issues maybe; i therefore need to develop... (5 Replies)
Discussion started by: sdcoms
5 Replies

8. UNIX for Dummies Questions & Answers

failure writing network systems-ftp error

Hi, I tried to do a ftp get process from linux server to a remote system.It was giving an error 'failure writing network systems'.I am trying to ftp two files,one among them is successful and this problem occurs only if i run the code through 'cron' ie,manual run ends successfully. Would... (0 Replies)
Discussion started by: DILEEP410
0 Replies

9. Shell Programming and Scripting

retry process in ftp

hi #!/bin/bash SERVER=10.89.40.35 USER=xyz PASSWD=xyz ftp -in $SERVER<<EOF user $USER $PASSWD mkdir PPL cd /path of remote dir lcd /path of local dir hash bin put <file name> bye <<EOF The above ftp script i have to schedule in crontab at a particular instance of time run daily.... (2 Replies)
Discussion started by: rookie250
2 Replies

10. Shell Programming and Scripting

Determining the failure or success of FTP

Hi there, I am in the process of writing a shell script to transfer files to a remote directory. Is there a method to determine the success or the failure of the ftp process. Regards Jim (4 Replies)
Discussion started by: JimJim
4 Replies
Login or Register to Ask a Question