Checking files in remote server and decide to copy file or not


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Checking files in remote server and decide to copy file or not
# 1  
Old 04-08-2013
Question Checking files in remote server and decide to copy file or not

Hi there,
I have a problem in my script,
I need to check whether file exists in remote server or not,
if the file exists, then stop copy
else copy the file to the server..

my code is something like this
Code:
while read $server
do
if ssh $server "cd $directory_name; if [ -r $file2copy ]; then echo "Error: File $file2copy already exists, stop copying..exit"; fi"
 else scp -r $file2copy $server:~/$directory_name
 echo " file copied"
done

my problem it doesn't do the checking actually and just running the stop copying..

anyone can help?

Last edited by beezy; 04-08-2013 at 12:17 AM.. Reason: typo
# 2  
Old 04-08-2013
Check out the info on the below link for info on checking if file exists on remote server via ssh:
https://www.unix.com/shell-programmin...le-exists.html
# 3  
Old 04-08-2013
The thread spacebar pinted you to is a good one. I suggest you study it. Just a final observation on your code:

Quote:
Originally Posted by beezy
Code:
while read $server
do
if ssh $server "cd $directory_name; if [ -r $file2copy ]; then echo "Error: File $file2copy already exists, stop copying..exit"; fi"
 else scp -r $file2copy $server:~/$directory_name
 echo " file copied"
done

This should not work at all because it contains a syntax error. I have indented it to make it more obvious:

Code:
while read $server ; do
     if ssh $server "<cmd>"
     else scp -r $file2copy $server:~/$directory_name
     echo " file copied"
done

The "if" is nowhere closed by a "fi" and the mandatory "then" is missing too. In addition:

Code:
"cd $directory_name; if [ -r $file2copy ]; then echo "Error: File $file2copy already exists, stop copying..exit"; fi"

This should not work because double quotes can't be nested.


I hope this helps.

bakunin
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How to copy files from remote server to local?

Hi experts, I 'm newbie to unix world, now I have task to copy the latest files from remote server to my local. I believe this must be very common request in this community. I want you do it one more time for me please. My requirement is something like this: I receive files in the below... (3 Replies)
Discussion started by: parpaa
3 Replies

2. Shell Programming and Scripting

Copy down remote files and rename them to include the server name with full path

I need to pull down a good bit of files for another support team for an upgrade project. I have a server.list with all of the server names. I need to do two parts: FIRST: I have this example, but it does not list the server name in front of each line. #! /bin/bash for server in $(<... (10 Replies)
Discussion started by: asnatlas
10 Replies

3. UNIX for Advanced & Expert Users

How to copy a file from remote server and preserve timestamp

Hi How to copy a file from remote server and preserve timestamp. Please not, i have to pass username and password to connect to the remote server in the shell script. Can this be achieved with simple ftp ? are there any options in ftp ? Thanks (4 Replies)
Discussion started by: skumar75
4 Replies

4. UNIX for Dummies Questions & Answers

Can I copy files on remote server with ftp ?

I just realize the only way is to download and upload again.. is not possible to copy them remotely with the ftp protocol ? thanks (2 Replies)
Discussion started by: aneuryzma
2 Replies

5. Shell Programming and Scripting

Checking the file in remote server using SFTP

Hello, I would appreciate if any one can help me on this. The below script start running at 12:30AM. Every 5 min, i go and check the remote site. If i see filewatch.txt over there, then i need to call another shell script and load the data into database. If i don't see that file, then i have to... (2 Replies)
Discussion started by: govindts
2 Replies

6. UNIX for Dummies Questions & Answers

Copy files from remote server

Hi Friends, Could you please help me as per my requirement mentioned below ? I have to copy files from one unix server to another unix server, and the files that i need to copy from the remote server are only those which are modified/created Today from abc directory on the remote server (1 Reply)
Discussion started by: ramask
1 Replies

7. Shell Programming and Scripting

copy the latest file in the remote server's directory

Hi Expert Team, I performed the below piece of code to copy the latest file in the remote server's directory to the same server's other directory. But it is not working properly. How can i handle this? Can you please help me..? ssh ${REMOTE_USERID}@${REMOTE_HOSTNAME} "cp -p `ssh... (3 Replies)
Discussion started by: spkandy
3 Replies

8. Shell Programming and Scripting

copy files from remote server (B) to target server (A)?

Hi All, what is the comand to log off the remote server? I have 2 servers A, B. I need to find all files older than 7 days on server B and copy over to server A. My logic is: login the remote server: ================= ssh hostB cd /data/test find . -mtime -7 -ls | awk '{print... (4 Replies)
Discussion started by: Beginer0705
4 Replies

9. Solaris

Checking a file on a remote windows server

Hi Everyone! This is what I need to do... I am deploying some directories over to a windows server 2000/3 box from my solaris10 box and I need to make sure the directories exist. The only form of connection I have to work with is SSH Currently, my script deploys the directories over... (13 Replies)
Discussion started by: Keepcase
13 Replies

10. Shell Programming and Scripting

Copy a file on remote server

I have ssh keys setup and running properly between two servers. I have a Korn shell script that is logging into the remote server and needs to backup the authorized_keys and/or authorized_keys2 files. The following syntax works perfectly ------------------------------------- ssh... (1 Reply)
Discussion started by: sunsysadm2003
1 Replies
Login or Register to Ask a Question