Avoiding file overwrite during file transfer using scp


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Avoiding file overwrite during file transfer using scp
# 8  
Old 07-04-2012
I tried the code given by you:

Code:
cd $LOCALDIR
ssh $LOGIN@$REMOTESERVER "cd $REMOTEPATH; if [ -a $FILENAME ]; then mv $FILENAME $FILENAME.bak; fi"
scp -r $LOCALDIR$FILENAME $LOGIN@$REMOTESERVER:$REMOTEPATH$FILENAME

But ssh command is not running. It's just copying the file there by overwriting existing one but not creating back up file (as it should do as per second line of code). No error also.
# 9  
Old 07-04-2012
I'm not sure what is going wrong then, I suspect there is some issue with the ssh statement.
I ran the same logic on a test box and got the following output, so I know the statement works as intended:

Code:
stefan@stefan-Latitude-E6420:~$ remote="/etc/network"
stefan@stefan-Latitude-E6420:~$ filename="foobar"
stefan@stefan-Latitude-E6420:~$ ssh root@10.5.113.88 'ls /etc/network/foo*'
/etc/network/foobar
stefan@stefan-Latitude-E6420:~$ ssh root@10.5.113.88 "cd $remote; if [ -a $filename ]; then mv $filename $filename.bak; fi"
stefan@stefan-Latitude-E6420:~$ ssh root@10.5.113.88 'ls /etc/network/foo*'
/etc/network/foobar.bak
stefan@stefan-Latitude-E6420:~$

If I then did an scp of foobar from Latitude to 10.5.113.88, a ls of /etc/network/foo* on 10.5.113.88 would show both files.

Can you include some debug echo statements in your code and see where it fails?
# 10  
Old 07-05-2012
Thanks Spynapples.

One more thing, when I transfer the file using scp, it asks for the password at run time. Is there any way to transfer the file using scp non interactively? Need to automate it.
# 11  
Old 07-05-2012
Normally if you have key based authentication for SSH, SCP will use this as well. Have you set up key based authentication to the remote server?
# 12  
Old 07-05-2012
no not yet. How can I do that?
# 13  
Old 07-05-2012
# 14  
Old 07-05-2012
I recommend creating an RSA keypair as shown in the link Jim provided.

To copy the public key to the remote host, check if your system has the ssh-copy-id utility available:

Code:
ssh-copy-id remote-user@remotehost

will copy your public key into the .ssh/authorized_keys file in remote-user's home directory in one simple step.

If that utility is not available, you'll need to copy it manually.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Partial File Transfer using scp

I am trying to transfer a zip file of around 30 MB in my automation script using scp from system A to B. When I manually do scp, file is complete transferred but when automation shell script runs it, zip file is not completely transferred. Stack Trace while doing manual : Executing:... (1 Reply)
Discussion started by: Shaishav Shah
1 Replies

2. AIX

Problem using scp to transfer a file

I am testing the following command to transfer a file from my server (AIX 5.2) to another server. I was able to generate the keys and sent them the public key. scp -v -P 4030 /home/lawson/.ssh/jimtest.txt someuser@some.ftpsite.net:/Inbound/jimtest.txt > jimtest_out.txt 2>&1 Based on... (3 Replies)
Discussion started by: jyoung
3 Replies

3. UNIX for Advanced & Expert Users

SCP File Transfer

On unix AIX server, when I am trying to transfer file from one directory to another directory on the same server through a program(where i call the script) it gives error "Lost Connection". (5 Replies)
Discussion started by: Pash
5 Replies

4. UNIX for Advanced & Expert Users

SCP File Transfer

I have 3 AIX server namely - Server 1 , Server 2 and Server 3. And have done SCP setup between Server 1 and Server 2 so that i dont have to give password when i transfer file from Server 1 to Server 2 by setting public key between the server. Q1. If the unix password of the target server... (3 Replies)
Discussion started by: Pash
3 Replies

5. UNIX for Advanced & Expert Users

SCP - File transfer message

Whenever I transfer file through SCP between two server it gives below given message.....Is there a way to avoid it.... Target server : newyork $ scp ABC27801.iue newyork:./iABC/x0017801.iue Message ===== This system is for the use of authorized users only. Individuals using this... (1 Reply)
Discussion started by: Pash
1 Replies

6. UNIX for Advanced & Expert Users

scp command for file transfer

I am not able to throw a file from server173 to server067 i.e. wlsuser@server173> scp /tmp/harsha.txt wlsuser@server067:/tmp fails However, I am able to pull a file from server173 onto server067's /tmp dir wlsuser@server067> scp wlsuser@server173:/tmp/harsha.txt /tmp... (2 Replies)
Discussion started by: shifahim
2 Replies

7. Shell Programming and Scripting

scp command for multiple file transfer.

FILE_LIST="{a.txt,b.txt,cal*}" scp -r $..$REMOTE_PATH$FILE_LIST $LOCAL_PATH This script passes only when all the three files are transfere, wat if only two file are transfered, but still I was to make the return code as pass. is it possible. (2 Replies)
Discussion started by: sangea
2 Replies

8. UNIX for Dummies Questions & Answers

File transfer using SCP

I have a shell script which uses SCP command to transfer the files from one server to another server. The files are getting transferred successfully, but the problem is the files transferred to the destination server didnot have the permissions as that of the files on the source server. Command... (5 Replies)
Discussion started by: kumarm
5 Replies

9. Shell Programming and Scripting

file transfer using scp..

Hi Frdz I have a problem like. I need to transfer a file from source to destination (different systems with different IPs) using "scp" command and before transfer the file i have to check the file is available in destination or not, if it is there no need to transfer, otherwise we have to... (5 Replies)
Discussion started by: KiranKumarKarre
5 Replies

10. UNIX for Advanced & Expert Users

UNIX - SCP File Transfer

Hi, How do i know if the files are transferred succesfully when i use SCP to transfer files between 2 servers. One more is i am trying to send all the files in a single shot by using * to save the connection time. So can i know when the scp breakes in the middle scp $sourcepath/*... (9 Replies)
Discussion started by: vijaykrc
9 Replies
Login or Register to Ask a Question