Dear all, Does anyone aware of any utility to copy files which are created or modify form a specific date ?. Thanks Rajeev R. Veedu -------------- next part -------------- An HTML attachment was scrubbed... URL: <lists.centos.org/pipermail/centos/attachments/20080609/ae761b2c/attachment-0002.html>
On Mon, Jun 9, 2008 at 11:16 AM, Rajeev R. Veedu <rajeev at cracknell.com> wrote:> Dear all, > > > > Does anyone aware of any utility to copy files which are created or modify > form a specific date ?.Use find with either -exec or with xargs, and pass it either a -ctime or -mtime option for what you need. for example, find /path/ -type f -mtime -2 -name '*.txt' -exec cp {} /path/to/copy/to/ this may not be 100% syntactically correct, but should give you the general idea. -- During times of universal deceit, telling the truth becomes a revolutionary act. George Orwell
On Jun 9, 2008, at 11:16 AM, Rajeev R. Veedu wrote:> Does anyone aware of any utility to copy files which are created > or modify form a specific date ?. >to copy all files in /dir1 modified within the last 5 days to /dir2: $ find /dir1 -mtime -5 | xargs -I {} cp {} /dir2 if the filenames have whitespace in them, you can use this trick: $ find /dir1 -mtime -5 -print0 | xargs -0 -I {} cp {} /dir2 for more details on selecting by time: $ man find pay particular attention to the options -atime, -amin, -ctime, -cmin, -mtime, -mmin, and -daystart. -steve -- If this were played upon a stage now, I could condemn it as an improbable fiction. - Fabian, Twelfth Night, III,v
-----Original Message----- From: centos-bounces at centos.org [mailto:centos-bounces at centos.org] On Behalf Of Steve Huff Sent: Monday, June 09, 2008 7:34 PM To: centos at centos.org Subject: Re: [CentOS] Copying files from specific date. On Jun 9, 2008, at 11:16 AM, Rajeev R. Veedu wrote:> Does anyone aware of any utility to copy files which are created > or modify form a specific date ?. >>>to copy all files in /dir1 modified within the last 5 days to /dir2:>>$ find /dir1 -mtime -5 | xargs -I {} cp {} /dir2>>if the filenames have whitespace in them, you can use this trick:>>$ find /dir1 -mtime -5 -print0 | xargs -0 -I {} cp {} /dir2>>for more details on selecting by time:>>$ man find>>pay particular attention to the options -atime, -amin, -ctime, -cmin, >>-mtime, -mmin, and -daystart.>>-steve-- Actually I need to copy this on to another server with same folder structure. I think I need to explain bit of history. I had a server crash last week, and we have restored the files from the tape. However during this period of making the server up, the users having adding or changed files from our backup Server (Samba server which rsync to production server every night.) now I need to copy the files which user added/ modify last 7 days. Ideally if I can get this option in rsync it would be better. Otherwise I need to have a method so that all changed files to go on the relevant folder on the production server. I cannot take the full files in the backup files since they are historical backup and there are some unwanted files. Can I use scp instead of cp in your statement?. But how does it take the same directory name as the original location? Eg:from ServerA/FLDR2/FLDR3/Filename should go to ServerB/FLDR2/FLDR3/FILENAME Only change is the server name all other values will remain same. Any help would be really appreciated. Thanks Rajeev
Rajeev R. Veedu wrote:> -----Original Message----- > From: centos-bounces at centos.org [mailto:centos-bounces at centos.org] On > Behalf Of Steve Huff > Sent: Monday, June 09, 2008 7:34 PM > To: centos at centos.org > Subject: Re: [CentOS] Copying files from specific date. > > > On Jun 9, 2008, at 11:16 AM, Rajeev R. Veedu wrote: > > Does anyone aware of any utility to copy files which are created > > or modify form a specific date ?. > > > > > > to copy all files in /dir1 modified within the last 5 days to > > > /dir2: > > > > $ find /dir1 -mtime -5 | xargs -I {} cp {} /dir2 > > > > if the filenames have whitespace in them, you can use this trick: > > > > $ find /dir1 -mtime -5 -print0 | xargs -0 -I {} cp {} /dir2 > > > > for more details on selecting by time: > > > > $ man find > > > > pay particular attention to the options -atime, -amin, -ctime, > > > -cmin, -mtime, -mmin, and -daystart. > > > > -steve > > Actually I need to copy this on to another server with same folder > structure. I think I need to explain bit of history. > > I had a server crash last week, and we have restored the files from > the tape. However during this period of making the server up, the > users having adding or changed files from our backup Server (Samba > server which rsync to production server every night.) now I need to > copy the files which user added/ modify last 7 days. Ideally if I can > get this option in rsync it would be better. Otherwise I need to have > a method so that all changed files to go on the relevant folder on > the production server. I cannot take the full files in the backup > files since they are historical backup and there are some unwanted > files. > > Can I use scp instead of cp in your statement?. But how does it take > the same directory name as the original location? > > Eg:from ServerA/FLDR2/FLDR3/Filename should go to > ServerB/FLDR2/FLDR3/FILENAME > > Only change is the server name all other values will remain same. > > Any help would be really appreciated.One approach would be to use the find command given above to generate a list of files that have changed. Then pass that list to rsync via the '--files-from' option to transfer them to the other server. -- Bowie