added file size
This commit is contained in:
parent
00d87ecb5c
commit
055e9db8e2
5 changed files with 33 additions and 2 deletions
28
pkg/fs/fs.go
28
pkg/fs/fs.go
|
|
@ -12,6 +12,7 @@ import (
|
|||
stdfs "io/fs"
|
||||
"net/http"
|
||||
"os"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/go-logr/logr"
|
||||
|
|
@ -100,6 +101,33 @@ func (fs *FS) Stat(name string) (fi stdfs.FileInfo, err error) {
|
|||
return
|
||||
}
|
||||
|
||||
const (
|
||||
_ = 1 << (iota * 10)
|
||||
KiB
|
||||
MiB
|
||||
GiB
|
||||
TiB
|
||||
)
|
||||
|
||||
func (fs *FS) FileSize(name string) (size string) {
|
||||
fi, err := fs.Stat(name)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
s := fi.Size()
|
||||
switch {
|
||||
case s >= TiB:
|
||||
return strconv.Itoa(int(s/TiB)) + " TiB"
|
||||
case s >= GiB:
|
||||
return strconv.Itoa(int(s/GiB)) + " GiB"
|
||||
case s >= MiB:
|
||||
return strconv.Itoa(int(s/MiB)) + " MiB"
|
||||
case s >= KiB:
|
||||
return strconv.Itoa(int(s/KiB)) + " KiB"
|
||||
}
|
||||
return strconv.Itoa(int(s)) + " B"
|
||||
}
|
||||
|
||||
func (fs *FS) RemoveDst(name string) error {
|
||||
return fs.dst.Remove(name)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue