OS 模块的 Python 方法 readlink() 将符号链接的路径作为其参数,并返回符号链接指向的路径。它可能返回绝对或相对路径名。
语法
以下是 Python os.readlink() 方法的语法 -
os.readlink(path, *, dir_fd)
参数
Python os.readlink() 方法的参数如下 -
- path − 它指定了我们将要为其查找链接源的路径或符号链接。
- dir_fd − 这是一个可选参数,它是引用目录的文件描述符。
返回值
Python os.readlink() 方法返回一个字符串,该字符串表示符号链接指向的路径。
例以下示例显示了 readlink() 方法的用法。在这里,我们首先创建一个指向文件的符号链接,然后显示原始文件路径。
import os
src = '/usr/bin/python'
dst = '/tmp/python'
# This creates a symbolic link on python in tmp directory
os.symlink(src, dst)
# Now let us use readlink to display the source of the link.
path = os.readlink("Source link:", dst )
print path
让我们编译并运行上面的程序,这将创建一个指向 /usr/bin/python 的符号链接,稍后它将使用 readlink() 调用读取符号链接的源代码。在运行此程序之前,请确保您的系统中没有可用的 /tmp/python。
Source link: /usr/bin/python
例
如果指定的路径不是符号链接,则 os.readlink() 将引发 OSError。下面的示例说明了相同的情况。
import os
try:
# reading a path that doesn't exist
src = os.readlink("/tmp/path")
print(f"Source Path: {result}")
except OSError as exp:
print(f"Error: {exp}")
在执行上述代码时,它将产生以下输出 -
Error: [Errno 2] No such file or directory: '/tmp/path'