summaryrefslogtreecommitdiffstats
path: root/Lib/lib-old/find.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/lib-old/find.py')
-rw-r--r--Lib/lib-old/find.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/Lib/lib-old/find.py b/Lib/lib-old/find.py
new file mode 100644
index 0000000..ccd9fdb
--- /dev/null
+++ b/Lib/lib-old/find.py
@@ -0,0 +1,26 @@
+import fnmatch
+import os
+
+_debug = 0
+
+_prune = ['(*)']
+
+def find(pattern, dir = os.curdir):
+ list = []
+ names = os.listdir(dir)
+ names.sort()
+ for name in names:
+ if name in (os.curdir, os.pardir):
+ continue
+ fullname = os.path.join(dir, name)
+ if fnmatch.fnmatch(name, pattern):
+ list.append(fullname)
+ if os.path.isdir(fullname) and not os.path.islink(fullname):
+ for p in _prune:
+ if fnmatch.fnmatch(name, p):
+ if _debug: print "skip", `fullname`
+ break
+ else:
+ if _debug: print "descend into", `fullname`
+ list = list + find(pattern, fullname)
+ return list