cfiler
CompareDir Class Reference

Detailed Description

A class that manages the comparison of 2 directories.

CompareDir(a, b, ignore=None, hide=None)
  A and B are directories.
  IGNORE is a list of names to ignore,
    defaults to ['RCS', 'CVS', 'tags'].
  HIDE is a list of names to hide,
    defaults to [os.curdir, os.pardir].

High level usage:
  x = CompareDir(dir1, dir2)
  x.report() -> prints a report on the differences between dir1 and dir2
   or
  x.report_partial_closure() -> prints report on differences between dir1
        and dir2, and reports on common immediate subdirectories.
  x.report_full_closure() -> like report_partial_closure,
        but fully recursive.

Attributes:
 left_list, right_list: The files in dir1 and dir2,
    filtered by hide and ignore.
 common: a list of names in both dir1 and dir2.
 left_only, right_only: names only in dir1, dir2.
 common_dirs: subdirectories in both dir1 and dir2.
 common_files: files in both dir1 and dir2.
 common_funny: names in both dir1 and dir2 where the type differs between
    dir1 and dir2, or the name is not stat-able.
 same_files: list of identical files.
 diff_files: list of filenames which differ.
 funny_files: list of files which could not be compared.
 subdirs: a dictionary of CompareDir objects, keyed by names in common_dirs.