By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
448,784 Members | 1,287 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 448,784 IT Pros & Developers. It's quick & easy.

How to access file last modified dates on each file in a directory

P: n/a
Greetings,

I am attempting to view all files in a directory and if those files
have not been modified within the last couple days I will remove them.
In order to do this I need to look at the file date modied and check
the date. I know how to look at each file name and I know how to remove
the file. I just can't figure out how to get access to the date last
modifed filed. Below is how I intend to access the file names in the
directory.
>>import os,time,sys
cachedirectory="c:\\informatica\\cache\\"
v_filename_array=os.listdir(cachedirectory)
x_len=len(v_filename_array)
v_filename_array[0] = first file name
v_filename_array[1] - second file name

Thanks'
Rich

Oct 30 '06 #1
Share this Question
Share on Google+
3 Replies


P: n/a
I hope this sample code helps

def getfileinfo(filename):
print 'Filename : %s' % filename
stats = os.stat(filename)
size = stats[stat.ST_SIZE]
print 'File Size is %d bytes' % size

accessed = stats[stat.ST_ATIME]
modified = stats[stat.ST_MTIME]

print 'Last accessed: ' + time.ctime(accessed)
print 'Last modified: ' + time.ctime(modified)

Regards,
Praveen

On Oct 30, 8:00 am, RAMohrm...@adelphia.net wrote:
Greetings,

I am attempting to view all files in a directory and if those files
have not been modified within the last couple days I will remove them.
In order to do this I need to look at the file date modied and check
the date. I know how to look at each file name and I know how to remove
the file. I just can't figure out how to get access to the date last
modifed filed. Below is how I intend to access the file names in the
directory.
>import os,time,sys
cachedirectory="c:\\informatica\\cache\\"
v_filename_array=os.listdir(cachedirectory)
x_len=len(v_filename_array)v_filename_array[0] = first file name
v_filename_array[1] - second file name

Thanks'
Rich
Oct 30 '06 #2

P: n/a

RA********@adelphia.net wrote:
Greetings,

I am attempting to view all files in a directory and if those files
have not been modified within the last couple days I will remove them.
In order to do this I need to look at the file date modied and check
the date. I know how to look at each file name and I know how to remove
the file. I just can't figure out how to get access to the date last
modifed filed.
For this you have some solutions.

1,
import os
import time
time.ctime(os.stat(r"L:\MyDoc\EBook\Python").st_mt ime)

2,
os.path.getmtime()

3, in Win32
win32file.GetFileTime
int = GetFileTime(handle, creationTime , accessTime , writeTime )

Oct 30 '06 #3

P: n/a
RA********@adelphia.net wrote:
I am attempting to view all files in a directory and if those files
have not been modified within the last couple days I will remove them.
In order to do this I need to look at the file date modied and check
the date. I know how to look at each file name and I know how to remove
the file. I just can't figure out how to get access to the date last
modifed filed. Below is how I intend to access the file names in the
directory.
>>>import os,time,sys
cachedirectory="c:\\informatica\\cache\\"
v_filename_array=os.listdir(cachedirectory)
since listdir only returns the last part of the full file path, it's
often easier to use glob.

for file in glob.glob("c:/informatics/cache/*"):
...

otherwise, you need to do os.path.join(cachedirectory, file) for each
file in the filename list, to get a full path.

to get the age of a file, use os.path.getmtime(filename). this returns
the modification time as seconds since a reference time (usually called
the "epoch". if you subtract this time from the current time, you get
the age (in seconds):

import glob, os, time

now = time.time()

for file in glob.glob("c:/informatics/cache/*"):
age = os.path.gettime(file) - now
print file, "is", age / 3600, "hours old"

adding code to remove old files should be straightforward.

</F>

Oct 30 '06 #4

This discussion thread is closed

Replies have been disabled for this discussion.