Bandicoot Bandicoot - 1 year ago 134
Python Question

Check if file is symlink in python

In python, is there a function to check if a given file/directory is a symlink ? For example, for the below files, my wrapper function should return


# ls -l
total 0
lrwxrwxrwx 1 root root 8 2012-06-16 18:58 dir -> ../temp/
lrwxrwxrwx 1 root root 6 2012-06-16 18:55 link -> ../log

Answer Source

To determine if a directory entry is a symlink use this:


Return True if path refers to a directory entry that is a symbolic link. Always False if symbolic links are not supported.

For instance, given:

drwxr-xr-x   2 root root  4096 2011-11-10 08:14 bin/
drwxrwxrwx   1 root root    57 2011-07-10 05:11 initrd.img -> boot/initrd.img-2..

>>> import os.path
>>> os.path.islink('initrd.img')
>>> os.path.islink('bin')
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download