Ftp Status Check


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Ftp Status Check
# 1  
Old 09-02-2005
Ftp Status Check

Hi,

I'm using the below script to ftp the file passed as 3rd argument. I'm passing the source and destination directory as 1st and 2nd argument. This script does the ftp successfully.

The script displays the echo before ftp stmt and does the ftp and does not display the stmts after that check the status of ftp...

Am I doing something wrong here?

echo "B4 ftp: `date '+%d/%m/%Y %T'`" |tee -a $LOGFILE 2>&1
ftp -v -n -i ${IP_ADDRESS} <<==eoftp== >> $LOGFILE 2>&1
user ${USERID} ${PASSWORD}
lcd ${1}
cd ${2}
put ${3}
bye
==eoftp==
ret_val=$?
echo "After ftp: `date '+%d/%m/%Y %T'`" |tee -a $LOGFILE 2>&1
echo "ret_val..= ${ret_val}" |tee -a $LOGFILE 2>&1
if [[ ${ret_val} -ne 0 ]]
then
echo "FTP failed..." |tee -a $LOGFILE 2>&1
else
echo "FTP Successful..." | tee -a $LOGFILE 2>&1
fi

Thanks in advance,

AC
# 2  
Old 09-05-2005
You cannot use the return-code from ftp. Instead, you must to grep your logfile to ensure that there were no error messages from either the cd or put commands.
e.g. grep "^550" should show any "No such file or directory" messages if you try to cd to a directory that does not exist.
# 3  
Old 09-07-2005
This may be a trivial solution ... but can try this ... works fine till now for me ...

(
echo "
open destination_machine_ip
user username password
bin
cd \"destination_directory\"
dir filename
mget filename
close
"
) | ftp -nv > TempLogFtp.log
if [ $? -ne 0 ]; then
echo "--------------------------------------------------" >> $LOGFILE
echo "`date` FTP Failed" >> $LOGFILE
echo "--------------------------------------------------" >> $LOGFILE
exit 1
else
DESTINATION_FILE_SIZE=`grep "Opening BINARY data connection" TempLogFtp.log|cut -d"(" -f2|cut -d" " -f1`
SOURCE_FILE_SIZE=`ls -l filename|tr -s " "|cut -d" " -f5`
if [ $DESTINATION_FILE_SIZE -eq $SOURCE_FILE_SIZE ]; then
FILENAME="`ls filename`"
echo "Download Successful. Filename: $FILENAME" >> $LOGFILE
else
echo "--------------------------------------------------" >> $LOGFILE
echo "`date` Download Failed" >> $LOGFILE
echo "--------------------------------------------------" >> $LOGFILE
exit 1
fi
fi

U can chk for other exit code such as 550 too as given by Ygor
# 4  
Old 09-08-2005
Thanks for the information.

Quote:
Originally Posted by Sabari Nath S
This may be a trivial solution ... but can try this ... works fine till now for me ...

(
echo "
open destination_machine_ip
user username password
bin
cd \"destination_directory\"
dir filename
mget filename
close
"
) | ftp -nv > TempLogFtp.log
if [ $? -ne 0 ]; then
echo "--------------------------------------------------" >> $LOGFILE
echo "`date` FTP Failed" >> $LOGFILE
echo "--------------------------------------------------" >> $LOGFILE
exit 1
else
DESTINATION_FILE_SIZE=`grep "Opening BINARY data connection" TempLogFtp.log|cut -d"(" -f2|cut -d" " -f1`
SOURCE_FILE_SIZE=`ls -l filename|tr -s " "|cut -d" " -f5`
if [ $DESTINATION_FILE_SIZE -eq $SOURCE_FILE_SIZE ]; then
FILENAME="`ls filename`"
echo "Download Successful. Filename: $FILENAME" >> $LOGFILE
else
echo "--------------------------------------------------" >> $LOGFILE
echo "`date` Download Failed" >> $LOGFILE
echo "--------------------------------------------------" >> $LOGFILE
exit 1
fi
fi

U can chk for other exit code such as 550 too as given by Ygor
# 5  
Old 09-08-2005
Thanks for the information.

Quote:
Originally Posted by Ygor
You cannot use the return-code from ftp. Instead, you must to grep your logfile to ensure that there were no error messages from either the cd or put commands.
e.g. grep "^550" should show any "No such file or directory" messages if you try to cd to a directory that does not exist.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

How to see the status of all the ftp put & get files logs and curent ftp transfer status ?

How to see the status of all the ftp put & get files logs and curent ftp transfer status if any active ftp running in the background ? (2 Replies)
Discussion started by: i4ismail
2 Replies

2. UNIX for Advanced & Expert Users

FTP commands to check the file status

Hi Experts, Can some one let me know the FTP commands to check the file status i.e i want to check whether my files are locked or in open status. I am connecting FTP from local machine. Regards, Spidy (1 Reply)
Discussion started by: spidy
1 Replies

3. Shell Programming and Scripting

FTP Status check(whether it is successful or not)

Hi Friends I need to check the status of FTP connection i.e. Whether it is successful or not I have tried this by assigning the FTP connection script to a variable and after that using this variable I tried to check the status. In the below code snippet I am trying to assign the FTP... (1 Reply)
Discussion started by: Kannannair
1 Replies

4. Shell Programming and Scripting

Check HD status

I have some server ( IBM , Dell ) , our data center is not in the same location with office , therefore , I do not know if the HD lamp is flash when the HD is fault , can advise if I can write a script to check if the HD is normal running or not ? thanks (1 Reply)
Discussion started by: ust
1 Replies

5. Shell Programming and Scripting

Check FTP Status

To all, I need to run a ftp command in one of my scripts and I need to evaluate what happens after it's done. The problem is the script would not capture the ftp responses. If I type the same thing on the command line, I get all kinds of responses. I would like to capture the same responses in... (2 Replies)
Discussion started by: april
2 Replies

6. UNIX for Advanced & Expert Users

Using FTP to check whether file is completely FTP... plz find the description below

Hi, We have some clients who will place huge files in to one of the remote server. And the shell script written in our local server to retrieve client files (using FTP) placed on one of the remote server of ours by clients. My question Is there any FTP command/script to check from my local... (1 Reply)
Discussion started by: nmsrao
1 Replies

7. Shell Programming and Scripting

How to check the FTP Status?

Hi, I wrote a script that is generating a file and then i have to ftp this file on another server. For this i am using mput to put the file. How can i make sure that the file was ftp'd correctly to the another server, is there any status check ? Thanks. (1 Reply)
Discussion started by: smc3
1 Replies

8. Shell Programming and Scripting

check the status and send an email with status

Hi, We have a text file which has the following data. ISA~00~ ~00~ ~ZZ~VISTN ~ZZ~U1CAD ~051227~183 7~U~00200~000011258~0~P~< GS~FA~EE05J~U1CAD~051227~1831~000011258~X~002002 ST~997~0001 AK1~SH~247 AK2~856~2470001 AK5~A AK2~856~2470002 AK5~A... (3 Replies)
Discussion started by: isingh786
3 Replies

9. Shell Programming and Scripting

FTP status

HI I am looking for a command, which redirect the ftp result to a text file. So I can analysis all the result code. I am also new on UNIX. Normally I ftp by using the .netrc. Is there any way when I exit from the .netrc instead of displaying the status by ftp -v, can I pipe/sendit it... (5 Replies)
Discussion started by: shah2
5 Replies

10. Shell Programming and Scripting

Status check of Automated FTP

Hi, I've following code fragment as a part of 1 of my scripts. Function is supposed to perform automated ftp to designated host. Here are the details:- #! /usr/bin/ksh < some code> perform_ftp() { #Assume that file to transfer is available in current directory ... (5 Replies)
Discussion started by: anijog
5 Replies
Login or Register to Ask a Question