问题
I'm trying to use the newest file in the 'upload' directory with '.log' extension to be processed by Python. I use a Ubuntu
web server and file upload is done by a html script. The uploaded file is processed by a Python script and results are written to a MySQL
database. I used this answer for my code.
import glob
newest = max(glob.iglob('upload/*.log'), key=os.path.getctime)
print newest
f = open(newest,'r')
But this is not getting the newest file in the directory, instead it gets the oldest one. Why?
回答1:
The problem is that the logical inverse of max
is min
:
newest = max(glob.iglob('upload/*.log'), key=os.path.getctime)
For your purposes should be:
newest = min(glob.iglob('upload/*.log'), key=os.path.getctime)
来源:https://stackoverflow.com/questions/24134495/python-get-most-recent-file-in-a-directory-with-certain-extension