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