Hi all,
I am trying to automate the ftp process.I have to copy a file from 28 different locations.I have used lftp.
The script is below posted:

Code:
#
#!/bin/bash
USR=treas
PWD=treas
DATE=$(date)
#for i in `cat IP`;do
sort IP| while read NAME IPADD; do
ping -c 1 $IPADD |grep "1 received" > /u/impbkup/$NAME.txt
if [ `cat /u/impbkup/$NAME.txt|wc -l` = 1 ] ; then 
#if [ $? -ne 0 ];then
cd /u/impbkup
#ftp -n $IPADD << EOF
#user $USR $PWD
lftp -u $USR,$PWD $IPADD <<EOF
cd /u1/impbkup
mv expdat.dmp.gz $NAME.dmp.gz
mget $NAME.dmp.gz
EOF
else
echo "$NAME is down on $DATE " >$NAME_dwn.txt
fi
done
exit
When i run the script,it says cd :login failed
mv:login failed

mget:login failed

However if I run the comands as
lftp -u usr,pwd 80.0.0.1<<eof
cd /u1/impbkup
mv expdat.dmp.gz host1.dmp.gz
mget host1.dmp.gz
eof

It works fine.I am unable to achieve the same functionality inside loop.

Any help would be appreciated.

Thanks