[SOLVED] - 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.
I need to get an output file that will look similar to this:
SERVER1:/path/path/filename
SERVER2:/path/path/filename
SERVER3:/path/path/filename
SERVER3:/path/path/filename
so on (and I might have multi files on one server)...
SECOND:
Once I have the "new" list of all servers and files I need to be able to take that output and copy the files down to a remote server and rename the file to include the server name and full path.
EX: SERVER1/path/path/filename
Script will use the above to ssh to SERVER1 and copy the file from the full path then rename it to SERVER1_path_path_filename
This is needed so that the support team will know which file belongs to which server and the full path as one server could have multi files with the same name.
This solution uses sed to prepend the server name to filelist and scp to copy the files locally. Most servers that support ssh also support scp so it should work for you.
This User Gave Thanks to Chubler_XL For This Post:
Very odd... When I tested this out on Jan 15th it worked just fine... I try to run it today and I get the following error:
scp: ambiguous target
When I check the cmd it appears to be adding a : to the end of the line / filename
I am getting the following:
/path/filename: No such file or directory
I double checked and saved the original new.list to new.list-backup. I removed all but 15 lines (no blank lines or spaces):
server1.domain.net:/path/path/path/filename
server2.domain.net:/path/path/path/filename
server3.domain.net:/path/path/path/filename
... on to server 15
I tried adding your update
and I am still receiving the "scp: ambiguous target" for each line...
Like I said this worked fine on the Jan 15th. I did not update the script and tried to run it today to check again and am now getting the "scp: ambiguous target" error.
When I run the script with set -x I am getting the following:
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)
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)
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)
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)
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)
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)
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)
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)