diff options
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/dircache.py | 15 | ||||
-rw-r--r-- | Lib/dircmp.py | 24 | ||||
-rw-r--r-- | Lib/shutil.py | 35 |
3 files changed, 35 insertions, 39 deletions
diff --git a/Lib/dircache.py b/Lib/dircache.py index 9cdbc70..ef68b42 100644 --- a/Lib/dircache.py +++ b/Lib/dircache.py @@ -1,11 +1,10 @@ # Module 'dircache' # -# Return a sorted list of the files in a POSIX directory, using a cache +# Return a sorted list of the files in a directory, using a cache # to avoid reading the directory more often than necessary. # Also contains a subroutine to append slashes to directories. -import posix -import path +import os cache = {} @@ -16,13 +15,13 @@ def listdir(path): # List directory contents, using cache except KeyError: cached_mtime, list = -1, [] try: - mtime = posix.stat(path)[8] - except posix.error: + mtime = os.stat(path)[8] + except os.error: return [] if mtime <> cached_mtime: try: - list = posix.listdir(path) - except posix.error: + list = os.listdir(path) + except os.error: return [] list.sort() cache[path] = mtime, list @@ -32,5 +31,5 @@ opendir = listdir # XXX backward compatibility def annotate(head, list): # Add '/' suffixes to directories for i in range(len(list)): - if path.isdir(path.join(head, list[i])): + if os.path.isdir(os.path.join(head, list[i])): list[i] = list[i] + '/' diff --git a/Lib/dircmp.py b/Lib/dircmp.py index f4eea1f..cbbce1b 100644 --- a/Lib/dircmp.py +++ b/Lib/dircmp.py @@ -2,9 +2,7 @@ # # Defines a class to build directory diff tools on. -import posix - -import path +import os import dircache import cmpcache @@ -18,8 +16,8 @@ class dircmp: def new(dd, (a, b)): # Initialize dd.a = a dd.b = b - # Properties that caller may change before callingdd. run(): - dd.hide = ['.', '..'] # Names never to be shown + # Properties that caller may change before calling dd.run(): + dd.hide = [os.curdir, os.pardir] # Names never to be shown dd.ignore = ['RCS', 'tags'] # Names ignored in comparison # return dd @@ -53,18 +51,18 @@ class dircmp: dd.common_funny = [] # for x in dd.common: - a_path = path.join(dd.a, x) - b_path = path.join(dd.b, x) + a_path = os.path.join(dd.a, x) + b_path = os.path.join(dd.b, x) # ok = 1 try: a_stat = statcache.stat(a_path) - except posix.error, why: + except os.error, why: # print 'Can\'t stat', a_path, ':', why[1] ok = 0 try: b_stat = statcache.stat(b_path) - except posix.error, why: + except os.error, why: # print 'Can\'t stat', b_path, ':', why[1] ok = 0 # @@ -92,8 +90,8 @@ class dircmp: # The hide and ignore properties are inherited from the parent dd.subdirs = {} for x in dd.common_dirs: - a_x = path.join(dd.a, x) - b_x = path.join(dd.b, x) + a_x = os.path.join(dd.a, x) + b_x = os.path.join(dd.b, x) dd.subdirs[x] = newdd = dircmp().new(a_x, b_x) newdd.hide = dd.hide newdd.ignore = dd.ignore @@ -151,7 +149,7 @@ class dircmp: def cmpfiles(a, b, common): res = ([], [], []) for x in common: - res[cmp(path.join(a, x), path.join(b, x))].append(x) + res[cmp(os.path.join(a, x), os.path.join(b, x))].append(x) return res @@ -165,7 +163,7 @@ def cmp(a, b): try: if cmpcache.cmp(a, b): return 0 return 1 - except posix.error: + except os.error: return 2 diff --git a/Lib/shutil.py b/Lib/shutil.py index d3521ec..dba4ee1 100644 --- a/Lib/shutil.py +++ b/Lib/shutil.py @@ -1,7 +1,6 @@ # Module 'shutil' -- utility functions usable in a shell-like program -import posix -import path +import os MODEBITS = 010000 # Lower 12 mode bits # Change this to 01000 (9 mode bits) to avoid copying setuid etc. @@ -19,17 +18,17 @@ def copyfile(src, dst): # Copy mode bits from src to dst # def copymode(src, dst): - st = posix.stat(src) + st = os.stat(src) mode = divmod(st[0], MODEBITS)[1] - posix.chmod(dst, mode) + os.chmod(dst, mode) # Copy all stat info (mode bits, atime and mtime) from src to dst # def copystat(src, dst): - st = posix.stat(src) + st = os.stat(src) mode = divmod(st[0], MODEBITS)[1] - posix.chmod(dst, mode) - posix.utimes(dst, st[7:9]) + os.chmod(dst, mode) + os.utime(dst, st[7:9]) # Copy data and mode bits ("cp src dst") # @@ -47,24 +46,24 @@ def copy2(src, dst): # The destination must not already exist. # def copytree(src, dst): - names = posix.listdir(src) - posix.mkdir(dst, 0777) - dot_dotdot = '.', '..' + names = os.listdir(src) + os.mkdir(dst, 0777) + dot_dotdot = (os.curdir, os.pardir) for name in names: if name not in dot_dotdot: - srcname = path.join(src, name) - dstname = path.join(dst, name) + srcname = os.path.join(src, name) + dstname = os.path.join(dst, name) #print 'Copying', srcname, 'to', dstname try: - #if path.islink(srcname): - # linkto = posix.readlink(srcname) - # posix.symlink(linkto, dstname) - #elif path.isdir(srcname): - if path.isdir(srcname): + #if os.path.islink(srcname): + # linkto = os.readlink(srcname) + # os.symlink(linkto, dstname) + #elif os.path.isdir(srcname): + if os.path.isdir(srcname): copytree(srcname, dstname) else: copy2(srcname, dstname) # XXX What about devices, sockets etc.? - except posix.error, why: + except os.error, why: print 'Could not copy', srcname, 'to', dstname, print '(', why[1], ')' |