Visit Our UNIX and Linux User Community


Copying files with the latest date


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Copying files with the latest date
# 1  
Old 07-29-2005
Copying files with the latest date

Hi All,

I have a situation where I need to copy the files having the latest date.

For example I have a file by name bas100e1_jun05. I need to copy it to bas100e1. But when a file by name bas100e1_jul05 is put in the same directory the script should copy the file having the latest month which is bas100e1_jul05.

Thanks
Shash
# 2  
Old 07-29-2005
If the mtime on the i-node for the file relects the date in the filename try:
Code:
cp `ls -1 -rt | tail -1` bas100e1

# 3  
Old 07-30-2005
If the modification times of the files don't necesarilly match the "dates" coded in the filenames, then you have to be a bit more creative. If this is part of a big project that you want automated, you should look into writing a perl script, which would read the directory filenames into an array, and then parse the filenames for substrings (those correspdng to "dates"), and order the array according to these substrings. In this way you can determine the filename corresponding to the most recent date.

Also, as more general advice, rather than making a copy of the most recent file, you should consider creating a symbolic link to it. E.g., in your example above, use:
ln -s bas100e1_jun05 bas100e1

But to get to the real issue: I don't know what you are trying to do with these different files. But if these file represent different versions/revisions of basically the same file, and you are using dates in the filenames to keep track of these revisions, then you are probably WAY better off looking into a version control system. Probably RCS is what you would want to use. Very simple and elegant...
# 4  
Old 08-01-2005
Why are you re-posting again ? You are breaking the rules.

Here is your post.

https://www.unix.com/unix-for-dummies-questions-and-answers/20507-copying-files-latest-date.html

I am replying to this thread since you have an extra requirement, added to this post, instead of adding it to the original.

Check this out.

Code:
#! /bin/sh

for file in *
do
if [ "$file" = *_jun* ] ; then

#Extract the maximum from the filename. 
#The ending pattern for the file will be _jun05 et al..
FILE=${file%*_}
cp $file /destination/dir/$FILE

elif [ "$file" = *_jul* ] ; then
cp $file /destination/dir/$file

fi ;
done



-vino.

Last edited by vino; 08-01-2005 at 09:56 AM..
# 5  
Old 08-01-2005
Hi Vino,

Sorry I thought if people might have not seen in the dummies forum. So I posted here.

Thanks for the info..

Shash
# 6  
Old 08-01-2005
Hi,

Thats true... I need to do something on automation.

Shash
# 7  
Old 08-01-2005
Hi Vino,

Its not working.....

Thanks
Shash
 

Previous Thread | Next Thread
Test Your Knowledge in Computers #487
Difficulty: Easy
A program's entry point is always defined by a main function or method.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl : copying only the latest file to other directory

In linux.. In a directory there are 3 files which I want to copy only the latest file (ls -ltr myfiles*.txt|tail -1) to other directory in perl? Could anyone please help me with the code? Regards, J (1 Reply)
Discussion started by: scriptscript
1 Replies

2. UNIX for Dummies Questions & Answers

Selecting the file of latest Date

Hi Folks, I have one query that there is a folder in which daily several logs files are getting created , I reached to that location through putty but what I observer that 10 files of different date are been created with same name , what I need to see is the latest file ...let say the location is ... (5 Replies)
Discussion started by: KAREENA18
5 Replies

3. UNIX for Dummies Questions & Answers

latest files copying over to new path

ls -lrt | nawk -v D="$(date +'%b%e:'| sed 's/ //g')" 'D==$6$7":"{sub(".*"$9,$9);print}' This picks only the latest files created based on the timestamp for that particular day.. how do i copy over the same files to a different location???? (1 Reply)
Discussion started by: win4luv
1 Replies

4. Shell Programming and Scripting

How to backup latest date files?

Hi, I have below two situations to handle, 1. I have list of files with file names having date&time. I have to backup to old date files. say I have below files in a directory, 1. XX123_20101004010101.dat 2. XX124_20101004010201.dat 3. XX121_20101003010101.dat 4.... (6 Replies)
Discussion started by: smr_rashmy
6 Replies

5. Shell Programming and Scripting

Copying a directory structure with the latest versions of files

Hello I have three directory structures for code releases. Each directory structure looks like this: bash-3.00$ ls -R | more .: Test_Release_1 Test_Release_2 Test_Release_3 ./Test_Release_1/dbcode: rp_online_import_srdp.pkb-1 srdp_ar_validation.pkb-1... (1 Reply)
Discussion started by: Glyn_Mo
1 Replies

6. Shell Programming and Scripting

Copying latest file into a folder

Hello all, this is my first post while i am trying to understand unix. I would basically like to know if i can do this: Lets say i have a folderA and folderB And i save something in folderA Can i make a script that checks folderA latest file, then compares it with the date of latest file in... (16 Replies)
Discussion started by: takissd
16 Replies

7. Shell Programming and Scripting

shell script to find latest date and time of the files

Hi everyone, Please help:) I have a list of 1000 different files which comes daily to the directory.Some of the files are not coming to the directory now. I need to write a shell script to find the latest date and time of the files they came to the directory. The files should be unique.... (1 Reply)
Discussion started by: karthicss
1 Replies

8. Shell Programming and Scripting

copying the latest file

Hi, I have a problem. I have some text files in a folder. The names can be like: emp_20080307053015.dat emp_20080306053015.dat emp_20080305053015.dat emp_20080304053015.dat The date format appended is like yyyymmdd and timestamp. What i need is i have to copy the latest file every... (12 Replies)
Discussion started by: Aswarth
12 Replies

9. Shell Programming and Scripting

Loop through files in dir, omit file with latest date

I want to loop through files in a directory but omit the file with the latest date in my list of files. How would I accomplish this? Thanks (2 Replies)
Discussion started by: stringzz
2 Replies

10. Shell Programming and Scripting

Copying files created after a specified date/time

I need to write a script that copies files from one directory to another that were created after "today 6:30". This script will be NOT be ran at the same time each day. any help is appreciated. (2 Replies)
Discussion started by: jm6601
2 Replies

Featured Tech Videos