https://golang.org/pkg/os/#Lstat说:func Lstat(name string) (FileInfo, error)Lstat 返回描述命名文件的 FileInfo。如果文件是符号链接,则返回的 FileInfo 描述符号链接。Lstat 不会尝试访问该链接。如果有错误,它将是 *PathError 类型。但是,返回的os.FileInfo接口不提供任何符号链接信息。这些信息去了哪里?我应该在 上使用特定于平台的 Sys() 方法吗os.FileInfo?
1 回答
隔江千里
TA贡献1906条经验 获得超10个赞
Stat
返回有关目标文件的信息,Lstat
返回有关符号链接本身的信息。
信息全部包含在文件的模式位中。您可以使用包中的预定义常量os
来检查您感兴趣的模式类型。
例如,如果您将fileInfo
from传递os.Stat("/path/to/symlink")
给以下代码,它不会说这是一个符号链接。但是,如果您传递 的返回值os.Lstat
,它将:
if fileInfo.Mode()&os.ModeSymlink != 0 { fmt.Println(fileInfo.Name(), "is a symlink") }
- 1 回答
- 0 关注
- 95 浏览
添加回答
举报
0/150
提交
取消