Get last month files


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users Get last month files
# 1  
Old 12-18-2014
Get last month files

Hi All,

How to get last month files. Ex : 1st Jan i have to get Dec 31 days files and on Feb 1st i have to get Jan 31 days files and on Mar 1st i have to get Feb 28 days files. Below are the example files with date and timestamp.
aaa.txt.timestamp
aaa.txt.timestamp
aaa.txt.timestamp
Please let me know how can i achieve this in a command and redirect all the files to one file.
Thanks.
# 2  
Old 12-18-2014
The simplest, accurate way is to use the modify time stamp and the 'find' comand. Some versions of 'find' allow direct references ( -newerXY datetime1 \! -newerXY datetime2, others need marker files ( -newer file1 \! -newer file2 ) that you can make with 'touch'. The logic should be >= MM/01/YYYY 00:00:00 but < MM+1/01/YYYY 00:00:00. Obviously, it needs to be at least the next month to get a complete list.

Later GNU date commands can help you generate the date strings, or you may need to write a little year-month date arithmetic in shell $(( ... )), i.e., 201501 - 1 = 201500, needs correction from 2015 to 2014 and 00 to 12.

Working off the first second of the month frees you from month length and leap year issues.

There is a little booble when DST time shifts in and out, as the month will be a hour short or long. You might want to export a $TZ that does not do DST (GMT?), so you do not have some files never or twice.
# 3  
Old 12-18-2014
Generally, it's doable, but not "in a command", though (imho). Your timestamps are not meaningful, at all, because there are tons of different timestamps. Please update your post with representative timestamps. Ideally, they are in YYYYMMDD format. Do you have a bash and GNU cal on your system?
# 4  
Old 12-19-2014
my file is in the format

aaa.txt.yyyymmdd
aaa.txt.yyyymmdd

Please let me know the command or script how to get last month files and if it is new year how to get last year dec files.
# 5  
Old 12-19-2014
Quote:
Please let me know the command or script how to get last month files and if it is new year how to get last year dec files.
What have you tried so far?
The 2 above posts give you the idea... The command there are no for such task and the script you will have to write if you have not found one in the numerous fora here, we are here do help you with the writing, not to do the job for you
# 6  
Old 12-19-2014
Hello kiranparsha,

Following may help you in same to get last year month December's files. I just created some test files and got the output.

Test files with last year's dates are as follows.
Code:
-rw-r--r-- 1 Singh420 Singh420     0 Dec  3  2013 aaa.txt20131212
-rw-r--r-- 1 Singh420 Singh420     0 Dec  4  2013 aaa.txt20131216
-rw-r--r-- 1 Singh420 Singh420     0 Dec  9  2013 aaa.txt90904383
-rw-r--r-- 1 Singh420 Singh420     0 Dec  9  2013 aaa.txt.20131201
-rw-r--r-- 1 Singh420 Singh420     0 Dec  9  2013 aaa.txt.20131200
-rw-r--r-- 1 Singh420 Singh420    64 Nov 21 08:11 xaa.txt
-rw-r--r-- 1 Singh420 Singh420   153 Dec 11 04:44 dataa.txt
-rw-r--r-- 1 Singh420 Singh420     0 Dec 19 07:53 aaa.txt20131213
-rw-r--r-- 1 Singh420 Singh420     0 Dec 19 07:53 aaa.txt20131214
-rw-r--r-- 1 Singh420 Singh420     0 Dec 19 07:53 aaa.txt20131215

Code:
for i in aaa.txt`date -d"1 year ago" +%Y%m`*
do
    echo $i
done

Output will be as follows.
Code:
aaa.txt20131212
aaa.txt20131213
aaa.txt20131214
aaa.txt20131215
aaa.txt20131216

Thanks,
R. Singh
This User Gave Thanks to RavinderSingh13 For This Post:
# 7  
Old 12-19-2014
RavinderSingh13,
not bad Smilie +1 for this cheat SmilieSmilie

I was thinking waaay too abstract:
  • get current year and month
  • decreasing month by 1 or setting month to 12 and descreasing year by 1, as the case may be (within case/esac)
  • parsing cal -d year-month output to get the last day of the previous month (to have a valid from-to range for the particular month)
  • in the for loop: comparing timestamps if ... -ge ... && ... -le ... bla blah

In fact, the OP needs to change one single word from your code (and maybe adding a period . after txt) to get all files he needs.
This User Gave Thanks to junior-helper For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Need last month files after 10th of every month

Hi, I need all file names in a folder which has date >= 10th of last month, Example : files in folder AUTO_F1_20140610.TXT BUTO_F1_20140616.TXT CUTO_F1_20140603.TXT FA_AUTO_06012014.TXT LA_AUTO_06112014.TXT MA_AUTO_06212014.TXT ZA_AUTO_06232014.TXT Output: AUTO_F1_20140610.TXT... (9 Replies)
Discussion started by: nani1984
9 Replies

2. Shell Programming and Scripting

How to add decimal month to some month in sql, php, perl, bash, sh?

Hello, i`m looking for some way to add to some date an partial number of months, for example to 2015y 02m 27d + 2,54m i need to write this script in php or bash or sh or mysql or perl in normal time o unix time i`m asking or there are any simple way to add partial number of month to some... (14 Replies)
Discussion started by: bacarrdy
14 Replies

3. UNIX for Advanced & Expert Users

Find all files other than first two files dates & last file date for month

Hi All, I need to find all files other than first two files dates & last file date for month and month/year wise list. lets say there are following files in directory Mar 19 2012 c.txt Mar 19 2012 cc.txt Mar 21 2012 d.txt Mar 22 2012 f.txt Mar 24 2012 h.txt Mar 25 2012 w.txt Feb 12... (16 Replies)
Discussion started by: Makarand Dodmis
16 Replies

4. HP-UX

Removing files from a particular month

Hi All I am trying to remove files from february, only using the following commands: find . -mtime 70 -exec rm {} \;, but I dont seem to get them deleted. But I am confused, now, because I have been told to use -atime, like find . -atime 75 -exec rm {} \;Please can you help! FR (8 Replies)
Discussion started by: fretagi
8 Replies

5. Shell Programming and Scripting

Script to counting a specific word in a logfile on each day of this month, last month etc

Hello All, I am trying to come up with a shell script to count a specific word in a logfile on each day of this month, last month and the month before. I need to produce this report and email it to customer. Any ideas would be appreciated! (5 Replies)
Discussion started by: pnara2
5 Replies

6. Shell Programming and Scripting

Compress a particular month files

Hi ALL, I am working on a folder where there are lot of files for the past one year. I need to compress a particular month files alone. suppose i need to compress the feb month files alone, what is the script we can use. Thanks in advance (2 Replies)
Discussion started by: acronis.84
2 Replies

7. Shell Programming and Scripting

How to delete1 month old files?

Hi, I need to create a script which should delete all the log files which are 1 month old or older than that. For ex: Today's date -- > 09/30/2010 Directory --> /user/work/log/ Files--> log.07182010 created on 07/18/2010 log.08182010 created on 08/18/2010 log.09182010 ... (4 Replies)
Discussion started by: ustechie
4 Replies

8. UNIX for Dummies Questions & Answers

print previous month (current month minus 1) with Solaris date and ksh

Hi folks month=`date +%m`gives current month Howto print previous month (current month minus 1) with Solaris date and ksh (7 Replies)
Discussion started by: slashdotweenie
7 Replies

9. Shell Programming and Scripting

Removing 2 month old files

I am trying to delete 2 month old file with date extension yyyymmdd, How can i get a 2 month old month and year? (16 Replies)
Discussion started by: shehzad_m
16 Replies

10. Shell Programming and Scripting

How to get previous month files

Hi, My task to to delete files which are of previous months. I have files named as follows *CCYYMMDD.xls. on a particular day i have delete previous months files i.e in Dec i have delete all nov files which look like 200511DD.XLS in Jan i have to delete all Dec files 200512DD.xls ... (7 Replies)
Discussion started by: savitha
7 Replies
Login or Register to Ask a Question