Guido van Rossum | f06ee5f | 1996-11-27 19:52:01 +0000 | [diff] [blame] | 1 | #! /usr/bin/env python |
Guido van Rossum | 2ba9f30 | 1992-03-02 16:20:32 +0000 | [diff] [blame] | 2 | |
| 3 | # Find symbolic links and show where they point to. |
| 4 | # Arguments are directories to search; default is current directory. |
| 5 | # No recursion. |
| 6 | # (This is a totally different program from "findsymlinks.py"!) |
| 7 | |
Guido van Rossum | e7b88e7 | 1992-03-30 11:13:59 +0000 | [diff] [blame] | 8 | import sys, os |
Guido van Rossum | 2ba9f30 | 1992-03-02 16:20:32 +0000 | [diff] [blame] | 9 | |
| 10 | def lll(dirname): |
Tim Peters | 70c4378 | 2001-01-17 08:48:39 +0000 | [diff] [blame] | 11 | for name in os.listdir(dirname): |
| 12 | if name not in (os.curdir, os.pardir): |
| 13 | full = os.path.join(dirname, name) |
| 14 | if os.path.islink(full): |
Collin Winter | 6afaeb7 | 2007-08-03 17:06:41 +0000 | [diff] [blame] | 15 | print(name, '->', os.readlink(full)) |
Andrew M. Kuchling | e236b38 | 2004-08-09 17:27:55 +0000 | [diff] [blame] | 16 | def main(): |
| 17 | args = sys.argv[1:] |
| 18 | if not args: args = [os.curdir] |
| 19 | first = 1 |
| 20 | for arg in args: |
| 21 | if len(args) > 1: |
Collin Winter | 6afaeb7 | 2007-08-03 17:06:41 +0000 | [diff] [blame] | 22 | if not first: print() |
Andrew M. Kuchling | e236b38 | 2004-08-09 17:27:55 +0000 | [diff] [blame] | 23 | first = 0 |
Collin Winter | 6afaeb7 | 2007-08-03 17:06:41 +0000 | [diff] [blame] | 24 | print(arg + ':') |
Tim Peters | 70c4378 | 2001-01-17 08:48:39 +0000 | [diff] [blame] | 25 | lll(arg) |
Andrew M. Kuchling | e236b38 | 2004-08-09 17:27:55 +0000 | [diff] [blame] | 26 | |
| 27 | if __name__ == '__main__': |
| 28 | main() |