Skip to main content

Python Magic – Find the Most Recently Modified File

I had a very interesting assignment today. Find the most recently modified file in the CVS repository!


 

Write a program in Java? This is my first choice if any problem comes to my mind! Well, iterating through tens of thousands of file to find the latest modified file. This can be a killer program if do it in java! Over the years I kind of looked down at the Scripting languages. I was amazed- how few lines of Python code can do wonders!


 

import os, time, glob


 

folder = "<FOLDER NAME IN UPPER CASE>"

oldModifiedFileName = ""

oldModifiedFileDate = ""

lastmod_date = ""


 

for infile in glob.glob( os.path.join(folder, '*') ):

    for (path, dirs, files) in os.walk(folder):

        for file in files:

            filename = os.path.join(path, file)

            stats = os.stat(filename)

            lastmod_date = time.localtime(stats[8])

            file_date = time.strftime("%Y%m%d %H:%M:%S", lastmod_date)


 

            if file_date > oldModifiedFileDate:

                oldModifiedFileDate = file_date

                oldModifiedFileName = filename


 

print "Last Modified FileName " + oldModifiedFileName + " Modified Date : " + time.strftime("%Y/%m/%d %H:%M:%S", lastmod_date)


 

Comments

Popular posts from this blog

SAAS Simple Maturity Model

There are two architectural models – commonly referred as SAAS Maturity models- that describe the transition of a service to what is called Multi-tenant efficient, highly scalable application. The SAAS Maturity model described by Microsoft has four distinct stages and is illustrated below. Another similar well-known model for SaaS-maturity is known as Forrester-model but adds another stage known as "Dynamic Business Apps-as-a-service". The three key Attributes of a SAAS Architecture: Configurability: Metadata used to configure the way the application behaves for customers Multi-tenant Efficiency : Maximizing the sharing of resources across tenants Scalability: Maximizing concurrency, resource efficiency SAAS Simple Maturity Model (Microsoft, 2006) SaaS Maturity Model (Forres...

CXF Example –Web Service Using Spring and Maven

Apache CXF is an open source services framework. CXF helps you build Web Services using frontend programming APIs, like JAX-WS and JAX-RS. These services can speak a variety of protocols such as SOAP, XML/HTTP, RESTful HTTP, or CORBA and work over a variety of transports such as HTTP, JMS or JBI. Support for bottom up approach and top down approach. Support for Standards JAX-WS, JSR-181, SAAJ, JAX-RS SOAP 1.1, 1.2, WS-I BasicProfile, WS-Security, WS-Addressing, WS-RM, WS-Policy WSDL 1.1 MTOM Building Web Services – Example 1 Develop a simple Web Service using CXF framework. The example in this case is an InterestRate Service. Tools / technologies Version CXF 2.1 Maven 2.0 Tomcat apache-tomcat-6.0.24 JDK java version 1.6.0_20       The Application Scope The "Interest Rate Service" application demonstrates how easily you can develop a Web Service using CXF frame work. The WSDL service definition defines three operations. Below is the InterestRateService interface.   @WebS...

Web Service Framework comparison

Web Services is one of those concepts made all the more difficult to understand because of the myriad acronyms and abbreviations that are superfluous in any discussion. Covering all the concepts and standards associated with Web Services is a vast topic in itself. There are a large number of standards around Web Services. These standards define the norms of a Web Services implementation and ensure that a Web Services is accessed independently of the client platform. There are numerous frameworks available to select to build web service today. Below is the most widely used ones. Product Does it fit my need? Axis2.0 Apache Axis2 is a complete re-design and re-write of the widely used Apache Axis SOAP stack to build on the lessons learnt from Apache Axis. An advantage of Axis 2 is its support for the binding frameworks XMLBeans. Axis 2 with XMLBeans is widely ...