date from filename


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting date from filename
# 1  
Old 12-17-2010
date from filename

Hi all

I have the following question:

With this command, I get the latest file in a directory.
lastfile =`ls -1tr | tail -n 1`
echo $lastfile

The output is then:
partner131210.txt (meaning 13th December 2010)

My goal is to get the date into a variable and to obtain a final variable that contains the difference in days between today and the date in the file name.

Thanks for your help.

Best regards,
David
# 2  
Old 12-17-2010
To cut date from file name use cut command.
Code:
fileDate=`echo partner131210.txt | cut -c8-13`

And this links will help u to find date difference. You should search related forums before posting.
link1 link2 link3
R0H0N
# 3  
Old 12-17-2010
Code:
echo partner131210.txt | grep -Eo [0-9][0-9]*

---------- Post updated at 04:10 PM ---------- Previous update was at 04:08 PM ----------

Quote:
Originally Posted by R0H0N
To cut date from file name use cut command.
Code:
fileDate=`echo partner131210.txt | cut -c8-13`

And this links will help u to find date difference. You should search related forums before posting.
link1 link2 link3
I doubt we can use cut -c8-13 here because we are not sure about the how many characters are there before date string. Though here date starts from 8th char.
# 4  
Old 12-17-2010
@R0H0N, Will work as long as date is always in 8th-13th position, Won't work if file name itself has some number like abc123131210.txt OR abcdefgabc131210.txt
Code:
 
typeset -i a #Date String from the file name
typeset -i b #Day value from the file name
typeset -i c #Day value from current date
typeset -i d #Difference in days
a=$(ls -1tr | tail -n 1 | sed 's/.*\(......\)\..*/\1/')
b=$(echo $a | cut -c1-2)
c=$(date '+%m')
d=$b-$c

# 5  
Old 12-17-2010
May be,

Code:
$ lastfile=partner131210.txt
$ expr $lastfile : '.*\(......\).txt'
131210
$

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

How to change existing date to current date in a filename?

Suppose i have a list of files in a directory as mentioned below 1. Shankar_04152019_ny.txt 2. Gopi_shan_03122019_mi.txt 3. Siva_mourya_02242019_nd.txt .. . . . . 1000 . Jiva_surya_02282019_nd.txt query : At one shot i want to modify the above all filenames present in one path with... (4 Replies)
Discussion started by: Shankar455
4 Replies

2. Shell Programming and Scripting

How to append date to filename, but base it on yesterday's date?

Hello, I'd like to write a monthly archive script that archives some logs. But I'd like to do it based on yesterday's date. In other words, I'd like to schedule the script to run on the 1st day of each month, but have the archive filename include the previous month instead. Here's what I... (5 Replies)
Discussion started by: nbsparks
5 Replies

3. Shell Programming and Scripting

Get the oldest date based on date in the filename

I am using ksh93 on Solaris. Ok, this may seem like a simple request at first. I have a directory that contains sets of files with a YYYYMMDD component to the name, along with other files of different filespecs. something like this: 20110501_1.dat 20110501_2.dat 20110501_3.dat... (2 Replies)
Discussion started by: gary_w
2 Replies

4. UNIX for Dummies Questions & Answers

Date in filename

how do i add the date for the filename? for example filename20080917 (3 Replies)
Discussion started by: khestoi
3 Replies

5. Shell Programming and Scripting

Get date from filename

Hi all, I have this files: aaa20080714.log bbbb20080714.log ccccccc20080714.log Can i get the 20080714 from each file? (6 Replies)
Discussion started by: icy_blu_blu
6 Replies

6. Shell Programming and Scripting

Concatenating the filename with date

Hi, I want to concatenate the filename with the current date using the get command in ftp. for ex: <filename><date> emp101_20080526 Can you please let me know the command for this. thanks, Aswarth. (9 Replies)
Discussion started by: Aswarth
9 Replies

7. Shell Programming and Scripting

display filename with date

Hi buddies, I have a doubt. I want to display filename with date in the following format.Is there any way to do this. Kindly give me the solution. I want to display the result in the following manner. test1.txt 03/28/2008 testlog.log 02/20/2008 Please let me know one solution how to do... (1 Reply)
Discussion started by: pstanand
1 Replies

8. Shell Programming and Scripting

Change new filename with date ??

Hi all, I am newbie and hope that you can help me to rename a file If I have a file name Perform.01222006.12345.Log now I would like to backup another file with another name like perform-20060112.dat This is a flat file, and I want to collect some field, then put it in a new file from... (9 Replies)
Discussion started by: sabercats
9 Replies

9. Shell Programming and Scripting

filename to contain date

hello, can anyone tell me how to rename a filename in a script to contain the current date? i have searched for the answer but with little success! many thanks rkap (4 Replies)
Discussion started by: rkap
4 Replies

10. UNIX for Dummies Questions & Answers

Add date to a filename

Hi I want to add the date to a filename in a script I have. So I want exp myfile01-FEB-2005.dmp How do I get the 01-FEB-2005 in there? Cheers Rich (3 Replies)
Discussion started by: richard1975
3 Replies
Login or Register to Ask a Question