unix 如何检查符号链接到一个目录?

x759pob2  于 2023-01-20  发布在  Unix
关注(0)|答案(1)|浏览(163)
$ ls -l
total 4
drwxr-xr-x 2 t domain users 4096 Nov 3 17:55 original
lrwxrwxrwx 1 t domain users    8 Nov 3 17:56 symbolic -> original

这里符号是指向原始文件夹的符号链接。
原始文件夹的内容。

$ ls -l original/
total 8
-rw-r--r-- 2 t domain users 4096  Nov  3 17:55 mydoc.docx

我在代码中有一个文件路径,如下所示:

std::string fileName = "/home/Downloads/symbolic/mydoc.docx";
path filePath(fileName);

如何检查fileName是否为符号链接?
is_symlink(文件路径)返回假,read_symlink(文件路径)返回空路径。

y1aodyip

y1aodyip1#

根据手册页,is_symlink需要一个filesystem::path作为参数,而不是一个std::string。

相关问题