#!/usr/bin/env python """ listdir.py - List A Directory Author: Sean B. Palmer License: GPL 2; share and enjoy! For use in CGI scripts. """ import os, time def format(dirname): filenames = [os.path.join(dirname, fn) for fn in os.listdir(dirname)] filenames.sort() for fn in filenames: stat = os.stat(fn) mtime, size = stat.st_mtime, stat.st_size lastmod = time.strftime('%Y-%m-%d %H:%M', time.gmtime(mtime)) size = str(size) + ' bytes' if os.path.isdir(fn): ftype = 'd' size = '-' else: ftype = 'f' yield ftype, fn, lastmod, size def html(dirname=None): dirname = dirname or '.' for (ftype, fn, mtime, size) in format(dirname): decor = {'f': '', 'd': '/'}[ftype] if fn.startswith('./'): fn = fn[2:] yield '