diff --git a/core/commands/files/files.go b/core/commands/files/files.go index f159e56c9..ae082e08b 100644 --- a/core/commands/files/files.go +++ b/core/commands/files/files.go @@ -87,6 +87,7 @@ var FilesStatCmd = &cmds.Command{ fmt.Fprintf(buf, "Size: %d\n", out.Size) fmt.Fprintf(buf, "CumulativeSize: %d\n", out.CumulativeSize) fmt.Fprintf(buf, "ChildBlocks: %d\n", out.Blocks) + fmt.Fprintf(buf, "Type: %s\n", out.Type) return buf, nil }, }, @@ -115,11 +116,22 @@ func statNode(ds dag.DAGService, fsn mfs.FSNode) (*Object, error) { return nil, err } + var ndtype string + switch fsn.Type() { + case mfs.TDir: + ndtype = "directory" + case mfs.TFile: + ndtype = "file" + default: + return nil, fmt.Errorf("unrecognized node type: %s", fsn.Type()) + } + return &Object{ Hash: k.B58String(), Blocks: len(nd.Links), Size: d.GetFilesize(), CumulativeSize: cumulsize, + Type: ndtype, }, nil } @@ -187,6 +199,7 @@ type Object struct { Size uint64 CumulativeSize uint64 Blocks int + Type string } type FilesLsOutput struct {