#!/usr/bin/python import sys files = map( lambda f: open(f), sys.argv[1:]) or [sys.stdin] Twords, Tlines, Tchars = 0, 0, 0 for file in files: words, lines, chars = 0, 0, 0 while 1: line = file.readline() if line: lines = lines + 1 list = line.split() words = words + len(list) chars = chars + len(line) else: print "%7d %7d %7d %s" % (lines, words, chars, file.name) break file.close() Twords = Twords + words Tlines = Tlines + lines Tchars = Tchars + chars if len(sys.argv) > 2: print "%7d %7d %7d total" % (Tlines, Twords, Tchars) #!/usr/bin/perl -w use strict; my $total = @ARGV > 1; my($Tlines, $Twords, $Tbytes,$lines, $words, $bytes); while(<>){ my @words = split; $words += @words; $bytes += length; $lines++; if (eof) { printf "%7d %7d %7d %s\n",$lines,$words,$bytes,$ARGV; $Tlines += $lines; $Twords += $words; $Tbytes += $bytes; ($lines,$bytes,$words) = (0,0,0); close ARGV; } } printf "%7d %7d %7d total\n",$Tlines,$Twords,$Tbytes if $total;