Configure CRON Job to transfer file from one host to another.

1. Set up SSH Public Key Authentication to connect to a remote host.
2. Create shell script to transfer file.


#!/bin/bash
HOST="<Destination_Host_Name> "
USER="<Destination_Host_User_Name>"
FILE="<Complete_File_Path_With_File_Name>
sftp $HOST <<END_SCRIPT
cd /<Destination_Directory_Location>
put $FILE
END_SCRIPT
echo "File transfer successfully......."
exit 0
 Save this file. Let say "fileTransferScript.sh"
3. Add entry in CRONTAB file.
1. Login to source host.
2. Go to folder etc
    cd /etc
3. Use following command to edit CRONTAB file.
    crontab -e
4. Add following cron job entry in file.
   * * * * * <Script_Path>/fileTransferScript.sh
Note: This entry will run the script every minute to transfer file.
Below table will help you to schedule cron job:

Field
Allowed values
Minute (First *)
0-59
Hour (Second *)  
0-23
Day of month (Third *)    
1-31
Month (Fourth *)
1-12 or Names like Jan, Feb
Day of week (Fifth *)
0-7 (0 or 7 is Sunday)


Some Examples:
15 6 2 1 * /fileTransferScript.sh
Script will run on 2nd January at 6:15 A.M.
15 06 02 Jan * /fileTransferScript.sh
Same as the above entry.
0 9-18 * * * /fileTransferScript.sh
Script will run on every hour from 9 A.M. through 6 P.M on every day.
0 9,18 * * Mon /fileTransferScript.sh
Script will run at 9 A.M. and 6 P.M on every Monday.
30 22 * * Mon,Tue,Wed,Thu,Fri /fileTransferScript.sh
Script will run at 10:30 P.M every weekday.

No comments:

Post a Comment