mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +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' | ||||
| # | ||||
| # 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 @@ def listdir(path): # List directory contents, using cache | |||
| 
 | ||||
| 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 | ||||
|  | @ -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 @@ def phase2(dd): # Distinguish files, directories, funnies | |||
| 		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 @@ def phase4(dd): # Find out differences between common subdirectories | |||
| 		# 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 @@ def report_phase4_closure(dd): # Report and do phase 4 recursively | |||
| 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…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Guido van Rossum
						Guido van Rossum