Simple stat command is implemented.

master
Zed A. Shaw 1 week ago
parent 924f3db33d
commit 13d60f3fd6
  1. 2
      starter/go.mod
  2. 2
      stat/.gitignore
  3. 4
      stat/Makefile
  4. 3
      stat/go.mod
  5. 32
      stat/main.go

@ -1,3 +1,3 @@
module lcthw.dev/go/go-coreutils/XX
go 1.24.2
go 1.25.3

2
stat/.gitignore vendored

@ -0,0 +1,2 @@
stat
stat.exe

@ -0,0 +1,4 @@
build:
go build .

@ -0,0 +1,3 @@
module lcthw.dev/go/go-coreutils/stat
go 1.25.3

@ -0,0 +1,32 @@
package main
import (
"fmt"
"os"
"flag"
"log"
"io/fs"
)
func PrintStat(stat fs.FileInfo) {
fmt.Printf("File: %s\nSize: %d\nAccess: %v\nModify: %v",
stat.Name(),
stat.Size(),
stat.Mode(),
stat.ModTime())
}
func main() {
flag.Parse()
files := flag.Args()
for _, fname := range files {
f, err := os.Open(fname)
if err != nil { log.Fatal(err) }
stats, err := f.Stat()
if err != nil { log.Fatal(err) }
PrintStat(stats)
}
}
Loading…
Cancel
Save