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


Login or Register for Dates, Times and to Reply

 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Copy down remote files and rename them to include the server name with full path
# 8  
Hmm very odd... I have only used vi to edit the file.

BEFORE:
new.list: ASCII text, with CRLF line terminators

I ran dos2unix on the file (new.list: ASCII text)

I am still getting :

Quote:
+ OLDIFS='
'
+ IFS=:
+ read server filepath
+ '[' -n /path/path/filename ']'
+ scp -t server.domain.net:/path/path/filename server.domain.net_path_path_filename
scp: ambiguous target
+ read server filepath
+ IFS='
'
+ '[' -n /path/path/filename ']' There appears to be a space after the /filename, is that an issue ?
# 9  
scp seems to require a complete path for the destination file try:

Code:
scp $server:$filepath ./$server${filepath//\//_}

This User Gave Thanks to Chubler_XL For This Post:
# 10  
I think I know what I did... I split this into two scripts, one to create the new.list then another to scp the files down and rename them. When I was testing out the first one to ssh I was getting "sudo: sorry, you must have a tty to run sudo" so added the -t argument to ssh. Looks like for some reason I also added the -t to my scp cmd in my other script for some reason Smilie

Thank you very much for your time Chubler_XL. I just did a test and everything is working Smilie

current working script is:

Code:
#!/bin/bash
#set -x

OLDIFS=$IFS
IFS=":"
while read server filepath
do
  scp "$server:$filepath" ./$server${filepath//\//_}
done < new.list
IFS=$OLDIFS

---------- Post updated 01-30-13 at 04:47 PM ---------- Previous update was 01-29-13 at 11:24 PM ----------

I am sorry to be a PITA...

I am so close...

I wanted to add "sudo chmod 755" as I was running into permissions issues with trying to scp some files.

Code:
#!/bin/bash
set -x

OLDIFS=$IFS
IFS=":"
while read server filepath
do
  ssh -t $server  "sudo chmod 755 $filepath"
  [ -n "$filepath" ] && scp "$server:$filepath" ./FILES/$server${filepath//\//_}
done < new.list
IFS=$OLDIFS

I am getting the following error:
Quote:
+ ssh -t server.domain.net 'sudo chmod 755 /path/path/filename'
Pseudo-terminal will not be allocated because stdin is not a terminal.
sudo: sorry, you must have a tty to run sudo
I also tried with ssh -tt and get
Quote:
tcgetattr: Inappropriate ioctl for device
# 11  
Anyone ??
Login or Register for Dates, Times and to Reply

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #942
Difficulty: Medium
The underlying Data Link Layer never poses limits to the maximum frame size.
True or False?

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Rename (move) multiple files on remote server using sftp

I want to rename (move) multiple files on remote server. I tried the following command to move all TXT files from my_dir directory to /new_dir. But it does not work. Any help? #!/bin/ksh sftp -dev3 << ABC cd my_dir $(for i in TXT; do echo "ls *.$i" ; rename $x /new_dir/$x;... (1 Reply)
Discussion started by: Soham
1 Replies

2. Shell Programming and Scripting

Rsync - how to copy hidden folder or hidden files when using full path

Hello. I use this command : rsync -av --include=".*" --dry-run "$A_FULL_PATH_S" "$A_FULL_PATH_D"The data comes from the output of a find command. And no full source directories are in use, only some files. Source example... (2 Replies)
Discussion started by: jcdole
2 Replies

3. 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

4. UNIX for Dummies Questions & Answers

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 while read $server do if ssh $server "cd $directory_name; if ; then echo "Error:... (2 Replies)
Discussion started by: beezy
2 Replies

5. Shell Programming and Scripting

make file (include files path)

Hi All, In make file i want to include header files from my local directory and if it did not find in local directory i want to include from network directory. can any help me how i can do this?. here is the code INCLUDE=${include}/ this is point to network dir how i can add option that it... (1 Reply)
Discussion started by: goraya430
1 Replies

6. 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

7. 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

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. Shell Programming and Scripting

rename files in remote server via ftp

Hi All, I want to rename set of files in the remote server which iam unable to do . i can rename only one file at a time . for example ftp $REMOTESERVER { rename $NAME1 $NAME2 } is working whereas ftp $REMOTESERVER { rename $NAME1*.dat $NAME2*.data } is not working ...... (4 Replies)
Discussion started by: dineshr85
4 Replies

Featured Tech Videos