mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 21:21:22 +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 @@ def listdir(path): # List directory contents, using cache | ||||||
| 
 | 
 | ||||||
| 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 @@ def phase2(dd): # Distinguish files, directories, funnies | ||||||
| 		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 @@ def phase4(dd): # Find out differences between common subdirectories | ||||||
| 		# 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 @@ def report_phase4_closure(dd): # Report and do phase 4 recursively | ||||||
| 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
	
	 Guido van Rossum
						Guido van Rossum