Visit Our UNIX and Linux User Community


SFTP file and archive only if its succedded


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting SFTP file and archive only if its succedded
# 1  
Old 06-19-2014
SFTP file and archive only if its succedded

Hi All,

I have a requirement where I have to archive the file as soon as I sFTP the file to remote location

below is the code I am going with

Code:
ls $FILE_NAME | while read FNAME
do
sftp -v -oport=nn $FTP_USER@$FTP_HOST <<EOF 2>&1 | tee -a ${LOG_FILE_NAME}
cd ${TGT_FOLDER_NAME}
lcd ${SRC_FOLDER_NAME}
put ${FNAME}
EOF
mv ${SRC_FOLDER_NAME}/$FNAME $TGT_ARCH
if [ $? -ne 0 ];then
  echo "Archiving failed  please check the log " | tee -a  ${LOG_FILE_NAME}
  FLAG=3
  exit $FLAG
else
  echo "Archiving succeded" for $FILE_NAME | tee -a  ${LOG_FILE_NAME}
fi
done

My question is how to make sure that the ftp is successful so I can go with archiving
# 2  
Old 06-19-2014
Capture sftp exit code:
Code:
ls $FILE_NAME | while read FNAME
do
sftp -v -oport=nn $FTP_USER@$FTP_HOST <<EOF 2>&1 | tee -a ${LOG_FILE_NAME}
cd ${TGT_FOLDER_NAME}
lcd ${SRC_FOLDER_NAME}
put ${FNAME}
EOF
if [ $? -ne 0 ];then
   echo "sftp fails"
   exit
fi 
mv ${SRC_FOLDER_NAME}/$FNAME $TGT_ARCH
if [ $? -ne 0 ];then
  echo "Archiving failed  please check the log " | tee -a  ${LOG_FILE_NAME}
  FLAG=3
  exit $FLAG
else
  echo "Archiving succeded" for $FILE_NAME | tee -a  ${LOG_FILE_NAME}
fi
done

# 3  
Old 06-19-2014
Sorry its not working

I have ran the code in an environment where the sFTP connection is not set up and it didnt ftped the file although the file is archived
# 4  
Old 06-19-2014
Remove tee and try again:
Code:
sftp -v -oport=nn $FTP_USER@$FTP_HOST <<EOF 2>&1
cd ${TGT_FOLDER_NAME}
lcd ${SRC_FOLDER_NAME}
put ${FNAME}
EOF
if [ $? -ne 0 ];then
   echo "sftp fails"
   exit
fi

I guess you're getting tee exit code.
To get status from both commads check PIPESTATUS: Internal Variables
# 5  
Old 06-19-2014
Thanks ,it worked

Previous Thread | Next Thread
Test Your Knowledge in Computers #78
Difficulty: Easy
Linux was inspired by MINIX
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script to archive logs and sftp to another archive server

Requirement: Under fuse application we have placeholders called containers; Every container has their logs under: <container1>/data/log/fuse.log <container1>/data/log/fuse.log.1 <container1>/data/log/fuse.log.XX <container2>/data/log/fuse.log... (6 Replies)
Discussion started by: Arjun Goswami
6 Replies

2. Shell Programming and Scripting

Check files and archive the files using sftp

Hi, I have to check the files in another server using sftp to do that, below is the code i am going with #!/bin/bash export SRC_FOLDER=$1 export ARC_FOLDER=$2 HOST=as07u3456 USER=relfag sftp ${USER}@${HOST} <<EOF cd $SRC_FOLDER/DSCOR ls bye EOF echo "done" whatever the files i... (8 Replies)
Discussion started by: ursrami
8 Replies

3. Shell Programming and Scripting

Archive old file

Hi All, I have the below senario. File_Name="^Test>*" Move_Delay=12 Source_Folder="/odi/nas/" Target_Folder="/odi/nas//archive" Now I want to move any file that is older than "Move_Delay" hours and matching "File_Name" pattern from the folder "Source_Folder" to the folder... (2 Replies)
Discussion started by: Anupam_Halder
2 Replies

4. Homework & Coursework Questions

Archive and purge the log file

Hi Unix Experts, I am new in this filed. I have assignment to Archive and purge the log file using shell scripts I tried I could not get the result please help me this. Ex: test.log requirement : using shell script I need to archive the log file and nil and the content of (test.log)... (1 Reply)
Discussion started by: johney1981
1 Replies

5. Shell Programming and Scripting

Problem in test file operator on a ufsdump archive file mount nfs

Hi, I would like to ask if someone know how to test a files if exist the file is a nfs mount ufsdump archive file.. i used the test operator -f -a h almost all test operator but i failed file1=ufs_root_image.dump || echo "files doesn't exist && exit 1 the false file1 is working but... (0 Replies)
Discussion started by: jao_madn
0 Replies

6. UNIX for Dummies Questions & Answers

Archive files that was already sftp'd/process

Hi, I need to modify my archive script to archive only files which is already sftp to the windows. We encounter some issue which the file is already archiving though it is not yet sftp'd to the Windows. Any answers.?Thanks! (1 Reply)
Discussion started by: sonja
1 Replies

7. Shell Programming and Scripting

Extracting from archive | compressing to new archive

Hi there, I have one huge archive (it's a system image). I need sometime to create smaller archives with only one or two file from my big archive. So I'm looking for a command that extracts files from an archive and pipe them to another one. I tried the following : tar -xzOf oldarchive.tgz... (5 Replies)
Discussion started by: chebarbudo
5 Replies

8. Shell Programming and Scripting

File Archive Script

Hi There, I want to create a script that will archive files out of a log folder into seperate folders below it, but I need it to keep the previous 2 days worth of information. Now I know I can easily get a script to put the files in there but I don't know how to only get files older than 2 days,... (10 Replies)
Discussion started by: KeesH
10 Replies

9. UNIX for Dummies Questions & Answers

create a archive of old file

i need a script which will create a archive of the files older than 10 days........ (2 Replies)
Discussion started by: jayaramanit
2 Replies

10. UNIX for Dummies Questions & Answers

Script to archive file

Hi All, I am trying to archive a file. I have the script to archive a file which is given below: #! /usr/bin/sh INITFILE="US_Recon" INITDIR="/var/opt/l2/CSN1/ap21" TMPDIR="/var/opt/sap2bn/out/CSN1/ap21/tmp" ARCHDIR="/var/opt/l2/CSN1/ap21" FINALDIR="/var/opt/sap2bn/out/CSN1/ap21"... (0 Replies)
Discussion started by: indira
0 Replies

Featured Tech Videos