Recursive copy of Folders with files


 
Thread Tools Search this Thread
Operating Systems HP-UX Recursive copy of Folders with files
# 8  
Old 09-05-2014
Thanks a lot guys

tar cvf - fd*/reports | { cd /TESTrun/ && tar xvf - ; }

This command worked fine.

But, the ownership and permission changed after copy. How to keep it same as source files?
# 9  
Old 09-05-2014
If you ran that as a normal user:
man tar:
Quote:
--same-owner
try extracting files with the same ownership as exists in the archive (default for superuser)

--no-same-owner
extract files as yourself (default for ordinary users)

--no-same-permissions
apply the user's umask when extracting permissions from the archive (default for ordinary users)
# 10  
Old 09-05-2014
And you have been told so in post#7...
# 11  
Old 09-05-2014
cp -rp creates directories and subdirectories
# 12  
Old 09-05-2014
Lightbulb

Quote:
Originally Posted by snr_silencer
cp -rp creates directories and subdirectories
That's true, in general, but it's not applicable here. I think you got a wrong idea of mhbd's plan.

If we concentrate on one customer only, then it's not simply
Code:
cp -rp fd000100 /TESTrun/new-dest/

it's more like
Code:
cp -rp fd000100/reports /TESTrun/new-dest/

If you run the latter, the folder reports is copied to new-dest, but then you don't know which customer do those reports belong to.
The result should be new-dest/fd000100/reports

A work-around could be to manually create the new-dest/fd000100 folder before copying like so
Code:
cp -rp fd000100/reports /TESTrun/new-dest/fd000100

but manually created (or restored with non-root?) folder raises another issues, like vbe has forseen correctly.
# 13  
Old 09-05-2014
sorry, I figured out now.

finally Smilie
# 14  
Old 09-08-2014
Hello Guys, thanks for your comments and suggestions.

Here is the current situation. I tried the command mentioned below in our test server which has same

folders structure as LIVE:

Code:
#tar cvpf - fd*/reports | { cd test-copy/ && tar xvpf - ; }

It worked fine. It copied all folders and sub-folders with files with original owner & permission at

once in a signle command. But we don't want to run this command in our LIVE server as the folders & files size is 1200GB involving millions of files and it may fail.

So, I tried to copy folders & files year-wise with following command:

Code:
#tar cvpf - fd*/reports/*2003* | { cd test-copy/ && tar xvpf - ; }

It copied all folders and sub-folders with files of year 2003, size is matching with source but owner &

permission changed i.e. not same as source. It seems to me that the tar command could not keep owner &

permission same as original when I put 2 arguments in the command one is fd* and another is /*2003*

I searched man tar but no clue found.

Note: each parent folder's owner is different. I am running the tar command from root user.

Our source directories are as follows:

Code:
/SQArun>ls -ltr fd000001 fd000010 fd000011

fd000010:
total 88
drwxrwx---   2 fq000010   dsqarun      24576 Jul 20 14:24 bills
drwxrwx---  759 fq000010   dsqarun      20480 Aug 27 13:01 reports

fd000011:
total 72
drwxrwx---   2 fq000011   dsqarun      16384 Sep 10  2013 bills
drwxrwx---  760 fq000011   dsqarun      20480 Aug 27 14:36 reports

fd000001:
total 104
drwxrwx---   2 fq000001   dsqarun      32768 Jul 20 14:24 bills
drwxrwx---  760 fq000001   dsqarun      20480 Aug 27 13:01 reports
/SQArun>

[/ICODE]There are many fd* folders which generated sequentially and total 800+ folders. 

[ICODE]/SQArun/fd000001/reports>ls -ltr -d *2003*
drwxrwx---   2 fq000001   dsqarun         96 May 31  2003 01-31-MAY-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun  2  2003 01-01-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun  2  2003 01-02-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun  4  2003 01-03-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun  4  2003 01-04-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun  9  2003 01-05-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun  9  2003 01-07-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun  9  2003 01-08-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun  9  2003 01-09-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun 10  2003 01-10-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun 11  2003 01-11-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun 12  2003 01-12-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun 14  2003 01-14-JUN-2003
drwxrwx---   2 fq000001   dsqarun         96 Jun 15  2003 01-15-JUN-2003
.
.
.
/SQArun/fd000001/reports>

In this fd000001 folder there are many such date folders where last 4 digits is year and ranging from year 2003 to 2014

Any further suggestions will be appreciated.

Thanks

Last edited by vbe; 09-08-2014 at 08:53 AM.. Reason: code tags please not ICODE!
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to copy files/folders and show the files/folders?

Hi, So i know we use cp -r as a basic to copy folders/files. I would like this BUT i would like to show the output of the files being copied. With the amazing knowledge i have i have gone as far as this: 1) find source/* -exec cp -r {} target/ \; 2) for ObjectToBeCopied in `find... (6 Replies)
Discussion started by: Imre
6 Replies

2. Shell Programming and Scripting

Recursive search for files and copy to new directories

So I have extremely limited experience with shell scripting and I was hoping someone could point out a few commands I need to use in order to pull this off with a shell script like BASH or whatnot (this is on OS X). I need to search out for filenames with account numbers in the name itself... (3 Replies)
Discussion started by: flyawaymike
3 Replies

3. Shell Programming and Scripting

Loop folders, delete files, copy new ones

Folks, I am hopeful that you may be able to help me out with writing a script that can be run nightly (as cron?) to loop through all subfolders within the "/media" directory, delete all of the files in each of them, and then copy in all of the files from the "/home//sansa" directory to each of... (6 Replies)
Discussion started by: acraig
6 Replies

4. UNIX for Dummies Questions & Answers

copy mutilple files to mutiple folders

Hi, I just started to learn shell progamming and just can't get my head around the following problem. I need to do the following: I have a folder which contains 100+ subfolders. Inside these subfolders there is one folder named 'Morph' and several jpg's. I need to copy all the files into... (4 Replies)
Discussion started by: M474746
4 Replies

5. Shell Programming and Scripting

recursive saving of files and folders

Hi all I have a bash script, that loops through a folders files and all subfolders for .shtml files. It looks for a string and replaces it, creating a backup of the original file. This all works great, but I'd like, when the backup is done, that the files are then also created in their... (4 Replies)
Discussion started by: terrid
4 Replies

6. Windows & DOS: Issues & Discussions

Windows mass copy files with same name in differnt folders

I have files existing with same names in the folders with date as display below c:\2010-09-10 <==== folder arr1.jpg arr2.jpg arr3.jpg arr4.jpg c:\2010-09-09 <==== folder arr1.jpg arr2.jpg c:\2010-09-08 <==== folder arr2.jpg arr3.jpg arr4.jpg ... (5 Replies)
Discussion started by: jville
5 Replies

7. Shell Programming and Scripting

I need script Copy permissions of files and folders from one server to another

Hi.. I have 2 servers with linux suse10. I made a mistake and on one of the servers changed with chmod the permission of root in directory /. In the other servers the permissions are correct Please i need a script, to change the permissions of one server 1, using the same permission of the... (11 Replies)
Discussion started by: ave-phoenix
11 Replies

8. Shell Programming and Scripting

copy some files from users home folders to my folder

i have users home directories in /home all the users have some files starting with character e and i want to copy all these files in a folder in my (root) home using a script i tried the script for i in m5 do cd m5 cp e1* /home/pc/exam cd .. done but get these... (3 Replies)
Discussion started by: pcrana
3 Replies

9. UNIX for Dummies Questions & Answers

copy all files and folders and cjange or remove ownership

So tried: cp -r -p test1/ user@machine:///srv/www/vhosts/domain.co.uk/httpdocs/backup/ but this didn't work either :( Anyone able to help with this? Many thanks Mr M (3 Replies)
Discussion started by: misterm
3 Replies

10. UNIX for Advanced & Expert Users

recursive copy of hidden files

I need to know how to copy hidden files recursively? cp -r sourceDir/* targetDir/. ignores the hidden files. Thank you!! (2 Replies)
Discussion started by: usfrog
2 Replies
Login or Register to Ask a Question