From a19a216bc60160c162e616145ef091dd18ce4e61 Mon Sep 17 00:00:00 2001 From: Skip Montanaro Date: Tue, 16 Feb 2021 14:40:46 -0600 Subject: Python 0.9.1 as posted in alt.sources --- demo/scripts/findlinksto.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100755 demo/scripts/findlinksto.py (limited to 'demo/scripts/findlinksto.py') diff --git a/demo/scripts/findlinksto.py b/demo/scripts/findlinksto.py new file mode 100755 index 0000000..210441e --- /dev/null +++ b/demo/scripts/findlinksto.py @@ -0,0 +1,29 @@ +#! /ufs/guido/bin/sgi/python + +# findlinksto +# +# find symbolic links to a given path + +import posix, path, sys + +def visit(pattern, dirname, names): + if path.islink(dirname): + names[:] = [] + return + if path.ismount(dirname): + print 'descend into', dirname + n = len(pattern) + for name in names: + name = path.cat(dirname, name) + try: + linkto = posix.readlink(name) + if linkto[:n] = pattern: + print name, '->', linkto + except posix.error: + pass + +def main(pattern, args): + for dirname in args: + path.walk(dirname, visit, pattern) + +main(sys.argv[1], sys.argv[2:]) -- cgit v1.2.3