posix -> os
This commit is contained in:
parent
a05026b38d
commit
c96207abb3
|
@ -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] + '/'
|
||||
|
|
|
@ -2,9 +2,7 @@
|
|||
#
|
||||
# Defines a class to build directory diff tools on.
|
||||
|
||||
import posix
|
||||
|
||||
import path
|
||||
import os
|
||||
|
||||
import dircache
|
||||
import cmpcache
|
||||
|
@ -19,7 +17,7 @@ class dircmp:
|
|||
dd.a = a
|
||||
dd.b = b
|
||||
# Properties that caller may change before calling dd.run():
|
||||
dd.hide = ['.', '..'] # Names never to be shown
|
||||
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
|
||||
|
||||
|
||||
|
|
|
@ -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], ')'
|
||||
|
|
Loading…
Reference in New Issue