From 3e69cfd7d66d9cff89e0a957b918272b24c368b3 Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Fri, 1 Jan 2010 18:59:44 +0200 Subject: Wrote a main program. --- summain | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100755 summain (limited to 'summain') diff --git a/summain b/summain new file mode 100755 index 0000000..d89a36c --- /dev/null +++ b/summain @@ -0,0 +1,38 @@ +#!/usr/bin/python +# Copyright (C) 2010 Lars Wirzenius +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +import os +import sys + +import summainlib + + +def files(root): + if os.path.isdir(root): + for dirname, dirnames, filenames in os.walk(root): + yield dirname + for filename in sorted(filenames): + yield os.path.join(dirname, filename) + else: + yield root + +normalizer = summainlib.NumberNormalizer() +for root in sys.argv[1:]: + for filename in files(root): + o = summainlib.FilesystemObject(filename, normalizer) + sys.stdout.write(o.format()) + sys.stdout.write('\n') -- cgit v1.2.1