How to get the latest folder in a directory using Python

python find newest file in directory
python get list of folders in directory
python get all directories at path
python get folders in directory
python script to get the latest file in a directory
python get the most recent file in directory
python find new file in directory
python get last file in directory alphabetically

I need to retrieve the directory of the most recently create folder. I am using a program that will output a new run## folder each time it is executed (i.e run01, run02, run03 and so on). Within any one run## folder resides a data file that I want analyze (file-i-want.txt).

folder_numb = 'run01'
dir = os.path.dirname(__file__)
filepath = os.path.join(dir, '..\data\directory',run_numb,'file-i-want.txt')

In short I want to skip having to hardcode in run## and just get the directory of a file within the most recently created run## folder.

You can get the creation date with os.stat

path = '/a/b/c'

#newest

newest = max([f for f in os.listdir(path)], key=lambda x: os.stat(os.path.join(path,x)).st_birthtime)

# all files sorted

sorted_files = sorted([f for f in os.listdir(path)],key=lambda x: os.stat(os.path.join(path, x)).st_birthtime, reverse=True)

How to get the newest directory in Python, import os dirs = [d for d in os.listdir('.') if os.path.isdir(d)] sorted(dirs, key=lambda x : os.path.getctime(x), reverse=True)[:1]. Update: Maybe some� Directories, Python 1 Comment. In this article we will discuss how to get the current working directory in Python. Python’s os module provides a function to get the current working directory i.e. os.getcwd() os.getcwd () os.getcwd () It returns a string containing the current working directory.

pathlib is the recommeded over os for filesystem related tasks.

reference

You can try:

filepath = Path(__file__).parent / 'data/directory'
fnames = sorted(list(Path(filepath).rglob('file-i-want.txt')), key=lambda x: Path.stat(x).st_mtime, reverse=True)
filepath = str(fnames[0])
filepath

Python name of latest folder created in a directory, You can do something like this: import os directory = '.' # current dir folders = os. walk(directory).next()[1] creation_times = [(folder,� Python Get Files In Directory – Getting Files With Pathlib Module. In this section, you will learn directory listing using pathlib module. pathlib module offers classes representing filesystem paths with semantics appropriate for different operating systems. Python 3.2 or later is recommended, but pathlib is also usable with Python 2.7 and 2.6.

glob.glob('run*') will return the list of files/directories that match the pattern ordered by name.

so if you want the latest run your code will be:

import glob
print(glob.glob('run*')[-1])  # raises index error if there are no runs

IMPORTANT, the files are ordered by name, in this case, for example, 'run21' will come AFTER 'run100', so you will need to use a high enough number of digits to not see this error. or just count the number of matched files and recreate the name of the folder with this number.

you can use glob to check the number of files with the same name pattern:

import glob
n = len(glob.glob('run*')) # number of files which name starts with 'run'
new_run_name = 'run' + str(n)

Note: with this code the file names starts from 0, if you want to start from 1 just add 1 to n.

if you want always double digit run number (00, 01, 02) instead of 'str(n)' use 'str(n).zfill(2)'

example:

import glob
n = len(glob.glob('run*')) # number of files which name starts with 'run'
new_run_name = 'run' + str(n + 1).zfill(2)

How to get the latest file in a folder using python, python find oldest file in directory. I need to get the latest file of a folder using python. While using the code: max(files, key = os.path.getctime). I am getting the � If you use Python 3, you can use iglob instead. For the os.path.split, I prefer using it like this (instead of the 1 index): folder, filename = os.path.split(latest_file) The import datetime is not used.

Find the oldest and newest file in a directory and sort them. � GitHub, Find the oldest and newest file in a directory and sort them. time-files-modified.py. #!/usr/bin/env python. import os. path = 'data'. os.chdir(path). I am working on a script where I am trying to list the newest file ending with .xls. It should be easy, but I am receiving some errors. Code: for file in os.listdir('E:\\Downloads'): if file.

Python: Get a directory listing sorted by creation date, Python Exercises, Practice and Solution: Write a Python program to get a directory listing sorted by creation date. We can get the present working directory using the getcwd () method of the os module. This method returns the current working directory in the form of a string. We can also use the getcwdb () method to get it as bytes object.

How to get the latest file in a folder using python?, I need to get the latest file of a folder using python. While using the How to create a zip archive of a directory in Python? Hello @kartik, The� To get the full path to the directory a Python file is contained in, write this in that file: import os dir_path = os.path.dirname(os.path.realpath(__file__)) (Note that the incantation above won't work if you've already used os.chdir() to change your current working directory, since the value of the __file__ constant is relative to the current working directory and is not changed by an os.chdir() call.)