Extract dates from file name.


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Extract dates from file name.
# 1  
Old 02-01-2010
Extract dates from file name.

Hi All,

I have files with names as
Code:
us_Gec1_wk_01to01_2008.TXT
ad_EngEnt_wk_01to10_2008.TXT
br_EngMov_wk_01to10_2008.TXT

Over here, I need to extract the dates and the year and store them in variables.

How can I achieve the same in bash.

In case of ad_EngEnt_wk_01to10_2008.TXT
FromDate = 01
ToDate = 10
Year = 2008

Is it possible to extract all at a once and store them in an array or variables.

Last edited by Yogesh Sawant; 02-26-2010 at 01:21 PM.. Reason: added code tags
# 2  
Old 02-01-2010
Ad hoc:

Code:
[house@discovery] echo "ad_EngEnt_wk_01to10_2008.TXT" \
       | awk -F "[_.]" '{print $4}' | awk -F "to" '{print $1}'
01
[house@discovery] echo "ad_EngEnt_wk_01to10_2008.TXT" \
       | awk -F "[_.]" '{print $4}' | awk -F "to" '{print $2}'
10
[house@discovery] echo "ad_EngEnt_wk_01to10_2008.TXT" \
       | awk -F "[_.]" '{print $5}'
2008

# 3  
Old 02-24-2010
Bug Extract dates from file name.

Dear Friend,

You can use the following way also.

Code:
 

$ echo "ad_EngEnt_wk_01to10_2008.TXT" | cut -b 14-15
01
$ echo "ad_EngEnt_wk_01to10_2008.TXT" | cut -b 18-19
10
$ echo "ad_EngEnt_wk_01to10_2008.TXT" | cut -b 21-24
2008

If you want to store the value in the corresponding variable you can use the following coding.

Consider the contents are available in the file name " new_file"

Code:
Fromdate=`echo "ad_EngEnt_wk_01to10_2008.TXT" | cut -b 14-15`;
echo "Fromdate:"$Fromdate;
ToDate=`echo "ad_EngEnt_wk_01to10_2008.TXT" | cut -b 21`;
echo "ToDate:"$ToDate;
Year=`echo "ad_EngEnt_wk_01to10_2008.TXT" | cut -b 21-24`;
echo "Year:"$Year;

You should run the file using the following command
sh new_file

The output is

Fromdate:01
ToDate:2
Year:2008

Last edited by murugaperumal; 02-24-2010 at 08:24 AM..
# 4  
Old 02-25-2010
MySQL

use this bash script:

Sample code:
Code:
From_date = cat files | cut -d'_' -f 4-8 | cut -d 't' -f 1
To_date = cat files | cut -d'_' -f 4-8 | cut -d'o' -f 2 | cut -d '_' -f 1
Year= cat files | cut -d'_' -f 4-8 | cut -d'o' -f 2 | cut -d '_' -f 2 | cut -d'.' -f 1

 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Replacing the Dates in a file

Hello Gurus, I'm beginner in Shell scripting. I got a requirement to write a script. I have a file with below (similar) content If you can observe above content, there are many date values existed (with different dates) in a format: ddMonyyyy I have to write replace all these... (7 Replies)
Discussion started by: raghu.iv85
7 Replies

2. UNIX for Advanced & Expert Users

How to get the Missing dates between two dates in the table?

Hi Am Using Unix Ksh ... I have a Table called date select * from date ; Date 01/02/2013 06/02/2013 I need the output as Missing Date 01/02/2013 02/02/2013 03/02/2013 04/02/2013 05/02/2013 06/02/2013 (2 Replies)
Discussion started by: Venkatesh1
2 Replies

3. Shell Programming and Scripting

Extract the lines between two dates

Dear experts I am new bee to scripting... Pl. help me getting the lines between two strings. I am getting the oracle sql output as below. and would like to get the time from system date compare with the date in sql output file and extract the lines. if system time is 2012-07-01 19:15:00 get... (1 Reply)
Discussion started by: nmadhuhb
1 Replies

4. UNIX for Dummies Questions & Answers

How to write the dates between 2 dates into a file

Hi All, I am trying to print the dates that falls between 2 date variables into a file. Here is the example. $BUS_DATE =20120616 $SUB_DATE=20120613 Output to file abc.txt should be : 20120613,20120614,120120615,20120616 Can you pls help me accomplish this in LINUX. Thanks... (5 Replies)
Discussion started by: dsfreddie
5 Replies

5. Shell Programming and Scripting

lines between two dates in a file

Hi Every body I had a data in file as shown.. Now i want to get the data and insert into other file but between the two date ranges or from a past date to current date..Please Guide me in doing that.. Below is the data that looks like... child process 2588 still did not exit, sending a... (2 Replies)
Discussion started by: Reddy482
2 Replies

6. Shell Programming and Scripting

How to processing the log file within certain dates based on the file name

Hi I am working on the script parsing specific message "TEST" from multiple file. The log file name looks like: N3.2009-11-26-03-05-02.console.log.tar.gz N4.2009-11-29-00-25-03.console.log.tar.gz N6.2009-12-01-10-05-02.console.log.tar.gz I am using the following command: zgrep -a --text... (1 Reply)
Discussion started by: shyork2001
1 Replies

7. Shell Programming and Scripting

Extract loglines between two dates

Hi all, this is my first post, and i want to say hello to everyone in there. I've a little problem for you all :). I have a log like this: 38714 07/02/09 00:01:36 nsrd web2consolidato:D:\ done saving to pool 'SISTMSW0060' (Q09480) 32 GB 38752 07/02/09 00:01:37 nsrd /dev/rmt/STK0.2.10.5... (5 Replies)
Discussion started by: koma
5 Replies

8. Shell Programming and Scripting

data extract from dates

I have a 1 GB file.I want to take the information for last one month from that file. Say i want to extract data from May 1st. File contents below. 193.135.218.124 - - "GET /jsp/acafai/supplier/notification.htm HTTP/1.1" 200 38531 193.135.218.124 - - "GET /images/2_aca_fai.gif HTTP/1.1"... (5 Replies)
Discussion started by: Krrishv
5 Replies

9. Shell Programming and Scripting

Need script to generate all the dates in DDMMYY format between 2 dates

Hello friends, I am looking for a script or method that can display all the dates between any 2 given dates. Input: Date 1 290109 Date 2 010209 Output: 300109 310109 Please help me. Thanks. :):confused: (2 Replies)
Discussion started by: frozensmilz
2 Replies

10. UNIX for Dummies Questions & Answers

Formatting dates in a file

Hi! Sitting with a headache this morning and can't get the brain around it! I have a file with 32000 lines that needs to be inserted onto a database. My problem is with the following: First part between bars is a date and second some identifiers |19511108|0001417| |19481024|0001439|... (6 Replies)
Discussion started by: maverick
6 Replies
Login or Register to Ask a Question