Need code to ftp files in loop


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Need code to ftp files in loop
# 1  
Old 06-02-2011
Need code to ftp files in loop

I have files like this beginning from 082008 (MMYYYY) to 112010 (MMYYYY)
Quote:
JKA.CAD.TUV.ST082008 JKA.CAD.TUV.ST092008 JKA.CAD.TUV.ST102008 JKA.CAD.TUV.ST112008 JKA.CAD.TUV.ST122008 JKA.CAD.TUV.ST012009 JKA.CAD.TUV.ST022009 JKA.CAD.TUV.ST032009 JKA.CAD.TUV.ST042009 JKA.CAD.TUV.ST052009 JKA.CAD.TUV.ST062009 JKA.CAD.TUV.ST072009 JKA.CAD.TUV.ST082009 JKA.CAD.TUV.ST092009 JKA.CAD.TUV.ST102009 JKA.CAD.TUV.ST112009 JKA.CAD.TUV.ST122009 JKA.CAD.TUV.ST012010 JKA.CAD.TUV.ST022010 JKA.CAD.TUV.ST032010 JKA.CAD.TUV.ST042010 JKA.CAD.TUV.ST052010 JKA.CAD.TUV.ST062010 JKA.CAD.TUV.ST072010 JKA.CAD.TUV.ST082010 JKA.CAD.TUV.ST092010 JKA.CAD.TUV.ST102010 JKA.CAD.TUV.ST112010
I need to fetch this files through ftp in loop. How can I achieve it?

I tried with the following code. But I'm not sure how to increment the month from 082008 to 112010.
Code:
        for i in {082008 .. 112010}
        do
        source_file='JKA.CAD.TUV.ST'$i
        target_file='MA_UPD.DAT'$i
        ftp -n lmuharbah.pam.com <<!
        user abcman abcman
        get $source_file $FTP_HOME_DIR/$target_file
        bye
       < Need help with increment>
        done

Thanks,
Gangadhar
# 2  
Old 06-02-2011
Do you have oracle installed on that machine ? If so it would be very easy get the "date" in the format you need.

Regards
Ravi
# 3  
Old 06-02-2011
Yes, I do have Oracle installed.

How can I achieve?
# 4  
Old 06-02-2011
Hello Gangadhar,

You can do something like this to get the dates:

Put the below in a script and execute it. Here you can pass from and todates to the script and assign them in start(Here for testing I just hard coded those values).

Code:
 
From_date="082008"
To_date="112010"
list=`sqlplus -S "username/passwd" <<EOF
set head off
set echo off
set feedback off
select to_char(add_months ( to_date('$From_date','MMYYYY'), rownum - 1 ), 'MMYYYY' )  from dual connect by rownum <= months_between(to_date('$To_date','MMYYY
Y'),to_date('$From_date','MMYYYY'))+1;
EOF`
 
for i in `echo $list`
do
source_file='JKA.CAD.TUV.ST'$i
        target_file='MA_UPD.DAT'$i
        ftp -n lmuharbah.pam.com <<!
        user abcman abcman
        get $source_file $FTP_HOME_DIR/$target_file
        bye
        done
done

Regards
Ravi
This User Gave Thanks to panyam For This Post:
# 5  
Old 06-02-2011
What about using mget with wildcards
# 6  
Old 06-02-2011
Ravi,
Thanks a lot for your help. It worked. But I'm also trying some other option. For example storing sourcefile & targetfile name in a file and then reading it. This will help me if i want to add or get some other file names.

ftpfiles.txt
Quote:
JKA.CAD.TUV.ST082008,ABC082008.DAT
JKA.CAD.TUV.ST092008,ABC092008.DAT
JKA.CAD.TUV.ST102008,ABC102008.DAT
I will read the file like this
Code:
while read source_file target_file
        do
        get_files.sh $source_file $target_file
        fi
        done < ftpfiles.txt

Currently with above code in sourcefile variable I'm getting JKA.CAD.TUV.ST082008,ABC082008.DAT. How can I get sourcefile as JKA.CAD.TUV.ST082008 and targetfile as ABC082008.DAT

---------- Post updated at 05:27 PM ---------- Previous update was at 01:18 PM ----------

Please ignore the new reuest. I figured it out.

Just have to set the IFS variable
Code:

OLDIFS=$IFS
IFS=,


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. Shell Programming and Scripting

FTP script loop

Hi, I'm trying to login to 100 boxes using a script. I have a file called 'hosty' which has all the ip addresses. Is there a way I can pass the password to the script then move on to the next box ?Basically I'm trying to test my password on all the boxes. AIX machines.. Here's what I have... (2 Replies)
Discussion started by: Grueben
2 Replies

3. Shell Programming and Scripting

send files through ftp using proxy in a loop

Hi, I have a problem with sending files to ftp using proxy. When using this script: #!/bin/bash DIR=/dane_wz ftp -n -v 172.30.100.13 << EOF quote USER xxx@172.25.240.45 quote PASS xxxx passive cd $DIR quit EOFit works fine and I get connection with FTP server, but using the same in a... (2 Replies)
Discussion started by: vrolok
2 Replies

4. Shell Programming and Scripting

Need help creating a script to FTP files to a server and then delete the files that were transfered.

I am trying to FTP files to a Windows server through my Linux machine. I have setup the file transfer with no problems but am having problem deleting those files from the Linux box. My current non-working solution is below. Any ideas, anyone?? :wall: Please be gentle, I'm fairly new to this... (4 Replies)
Discussion started by: jmalfhs
4 Replies

5. Shell Programming and Scripting

ftp transfer in a for loop

Frdz, i have scenorio like i have to open ftp connection in a for loop and connect to the other server and upload the file again and again till the for loop ends but i am getting problem when i use the following code. for i in `ls ${SOURCE_DIR}/` do FOLDER_NAME=`basename $i` for j in `ls... (4 Replies)
Discussion started by: KiranKumarKarre
4 Replies

6. Filesystems, Disks and Memory

Not able to FTP the files to a FTP server

Hi , We are facing a weird problem in our project. we need to send some xml & audio files to a remote FTP server from a Linux box, we are doing this in Perl script using Net::FTP->. Issue here is.. when FTPed the files using Perl scripts, only empty files ( 0 byte) are getting created on the... (2 Replies)
Discussion started by: kishorepotta
2 Replies

7. Shell Programming and Scripting

Loop certain code to all files within directory

Hi all, Can somebody help me with this problem pls. I need to extract one specific line from each files in a folder and put the all lines extracted in a unique output file in the following format. line extracted, respective name of file, date of file. I´m, trying the part to extract... (3 Replies)
Discussion started by: cgkmal
3 Replies

8. Shell Programming and Scripting

FTP and run a loop for array problem

Hello, I have a problem with my script whereby it does not want to loop. The function of my script is to FTP into a server and go to each directory/volume in the array 'VOL'. The way the loop is suppose to work, is to go into the first volume, get the files of R(yesterday's date) and... (3 Replies)
Discussion started by: tuffgong2008
3 Replies

9. Shell Programming and Scripting

ftp in a for loop

All, ll, I am trying to ftp multiple files. I borrowed the ftp logic from existing script. When I enclose the ftp in a for loop, I get a syntax error "'<' unmatched" I checked all the variables I am using ... please help... TIA Rao files=$(ls ${LI_REPORT_FILE_PRE} ) for file in $files... (3 Replies)
Discussion started by: rao
3 Replies

10. Shell Programming and Scripting

Ftp code problem

Hello I am trying to write a script that sends files via ftp from one server to another, i am using AIX 5.1. and bash shell to write my code. I get an error when trying to run the following lines of code ftp -n aptsbou01 <<! user $username $password binary ... (4 Replies)
Discussion started by: kswaraj
4 Replies
Login or Register to Ask a Question