检查目录是否为symlink?

2024-06-11 23:52:41 发布

您现在位置:Python中文网/ 问答频道 /正文

os中有一个函数os.path.islink(PATH),它检查PATH是否是symlink。但如果路径是指向某个目录的符号链接时失败。相反,python认为它是目录(os.path.isdir(PATH))。那么如何检查dir是否是link?在

编辑

以下是bash的想法:

~/scl/bkbkshit/Teaching: file 2_-_Classical_Mechanics_\(seminars\)
2_-_Classical_Mechanics_(seminars): symbolic link to `/home/boris/wrk/tchn/2_-_Classical_Mechanics_(seminars)'

以下是python的想法:

^{pr2}$

Tags: path函数路径目录os链接link符号
1条回答
网友
1楼 · 发布于 2024-06-11 23:52:41

这是因为在文件名末尾加了一个斜杠。在

os.path.islink("2_-_Classical_Mechanics_(seminars)/")
                                                  ^

尾随斜杠使操作系统跟随链接,因此结果是不是链接的目标目录。如果删除斜杠,islink将返回True。在

同样的事情也会发生:

^{pr2}$

相关问题 更多 >