假设我os.Stat()在目录上执行操作:func main() { fi, _ := os.Stat("/tmp") println(fi.Size())}// 548// Program exited.https://play.golang.org/p/NIzGMHRYfi[FileInfo].Size()值究竟代表什么?这不是文件大小,所以我在猜测文件数量之类的东西?节点?我在任何地方都找不到明确的答案,所以也许有人可以启发我?
1 回答
缥缈止盈
TA贡献2041条经验 获得超4个赞
文件信息提及
// length in bytes for regular files; system-dependent for others
所以这真的取决于执行环境。
参见例如“ ext4 在哪里存储目录大小? ”
在该示例中,目录统计大小返回 4096 字节。
这是目录本身的实际大小,而不是它包含的内容。
stat 命令不提供查询除文件系统对象(目录或文件)大小之外的任何内容的工具。
stat
根本没有办法返回多个大小——所以它只能返回目录本身的大小,而不是其内容的大小。
当您有硬链接文件时,“包含内容的目录大小”也变得不太清楚。
- 1 回答
- 0 关注
- 159 浏览
添加回答
举报
0/150
提交
取消