Solved

Script to FTP files

Posted on 2012-04-02
12
569 Views
Last Modified: 2012-05-01
Need a script to FTP directories  from AIX box to windows. Both are at remote  locations.Has to keep the sub directories folder structure intact. Rsync and cygwin installed on windows.
0
Comment
Question by:raaj4354
  • 6
  • 5
12 Comments
 
LVL 20

Accepted Solution

by:
carlmd earned 500 total points
ID: 37800359
#!/bin/ksh

COMO=/home/logs/rsync_log.`date +%d%h%y.%H:%M`
date | tee -a ${COMO}
print "rsynci script" | tee -a ${COMO}

cd /directory/onaix
rsync --delete -e rsh -av * remoteiporname:/remotepath/.
print "completed `date`" | tee -a ${COMO}

cd /directory2/onaix
rsync --delete -e rsh -av * remoteiporname:/remotepath2/.
print "completed `date`" | tee -a ${COMO}

print "Copy completed `date`" | tee -a ${COMO}
exit

This script will do the rsync copy, deleting files on the target that are gone from the source. It also creates a file /home/logs/... (you can change or remove this as desired) that has a copy of what happened. In this way if there is an issue you have someplace to look.

This script can be executed from a cron or using an "at" command. For example:
        at 6 pm today /etc/myrsyncscript

When creating the script on aix be sure to give it execute permission.

Note that you may need to include other options on the rsync line depending on how you have acces to the windows system setup.
0
 
LVL 53

Expert Comment

by:Bill Prew
ID: 37800606
So, do you want to run the script on the unix machine and "push" the files, or do you want to run it on the windows machine and "pull" the files?

~bp
0
 

Author Comment

by:raaj4354
ID: 37802662
carl: I executed the script above. seems to be a connectivity issue..
remote host refused an connection operation
rsync: connection unexpectedly  closed (o bytes transferred so far)
rsync error:error in rsync protocol data stream code (12) at io.c (600) ..any ideas..

Also  can the remote path on windows can be C:/some dir/..?


billprew:
I dont mind doing it either ways as long as it ftps the directories with all the files in it.
0
3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

 
LVL 20

Expert Comment

by:carlmd
ID: 37803152
Ok, the issue is a login one.

rsync is configured to use ssh by default so lets replacing the line form above with this...

rsync --delete  -av * [user@]host::module/path/.
(the name/path you are putting in here is the same as you would to remote acceses a share)

This assumes you have ssh on the remote system.

This is detailed in the "-e" section of the doc at http://rsync.samba.org/ftp/rsync/rsync.html
0
 

Author Comment

by:raaj4354
ID: 37822044
Can the FTP done to a specific folder on windows rather than a shared folder. The script is failing since it not find the directory..!
0
 
LVL 20

Expert Comment

by:carlmd
ID: 37822962
Set up a top level share on the target system such as..
          myshare = \mycomputer\folder\folder2
and reference myshare in the login

You must have permission to log into the target system, and to write to the place where you want to put the file.
0
 

Author Comment

by:raaj4354
ID: 37894821
The files are being ftped out from the AIX when i see the log but i cant see the files on the windows side..!! Sorry for the late response.
0
 
LVL 20

Expert Comment

by:carlmd
ID: 37896180
My guess is that the share is not correct, or you are not using it.

Make a dummy file with some name that is unique. ftp that to the windows system and then search for it. That will tell you where they are going.
0
 

Author Comment

by:raaj4354
ID: 37910625
I made a dummy directory and executed  the script and I see the list of files that are uploading. My share folder is /new and in the script i gave /new/new1 and the log shows me "creating new directory /newnew1/ .  I searched the computer for folder newnew1 nothing found...
0
 
LVL 20

Expert Comment

by:carlmd
ID: 37910666
Just search for new1
0
 

Author Comment

by:raaj4354
ID: 37911575
#!/bin/ksh

COMO=/home/user/rsync_log.`date +%d%h%y.%H:%M`
date | tee -a ${COMO}
print "rsynci script" | tee -a ${COMO}

cd /usr/testdir/directory/subfolder/
rsync --delete -av * [user@]hostname:\new
print "completed `date`" | tee -a ${COMO}

print "Copy completed `date`" | tee -a ${COMO}
exit


I searched for directory name and the files that were transferred could not find any..:-(
I pinged the host to which i am trying ftp the files and it is reachable. Checked inside the shared folder no files ftped..
0
 
LVL 20

Expert Comment

by:carlmd
ID: 37914095
Just to be sure, you have replaced [user@]hostname with the real credentials that you would use to access that share?

like...

joe@192.168.1.10:/new
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

If like me you are one who spends a lot of time working and scripting with cmd.exe, sometimes it is handy to be able to quickly view a calendar for a given month and year. This script will quickly do just that!  Save the code posted below to a .bat …
Active Directory replication delay is the cause to many problems.  Here is a super easy script to force Active Directory replication to all sites with by using an elevated PowerShell command prompt, and a tool to verify your changes.
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…

831 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question