summaryrefslogtreecommitdiffstats
path: root/resolve-symlink.py
blob: a9107a9098e7d70579c18df55889f471f9d8e42a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/env python

import os
import sys
import shutil

def resolve_symlinks(links):
    for f in links:
        try:
            target = os.readlink(f)
            if target[0] != '/':
                # make absolute
                target = os.path.join(os.path.dirname(f), target)
            os.unlink(f)
            shutil.move(target, f)
        except OSError, err:
            print "Failed: %s (%s)" % (f, err)


if __name__ == '__main__':
    resolve_symlinks(sys.argv[1:])