| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- package main
- import (
- "flag"
- "log"
- "os"
- "path/filepath"
- "strconv"
- "time"
- )
- func main() {
- log.SetFlags(log.LstdFlags | log.Lshortfile)
- var dir = flag.String("d", "", "File path")
- flag.Parse()
- if *dir == "" {
- log.Fatal("File path is empty.")
- }
- var content []byte
- contentSize := 1024*1024*10
- for i := 0; i < contentSize; i++ {
- content = append(content, []byte("A")...)
- }
- log.Println("File content size: ", contentSize)
- // Write data
- go func() {
- var count int
- for {
- func() {
- count++
- f, err := os.OpenFile(filepath.Join(*dir, strconv.Itoa(count) + ".log"), os.O_CREATE|os.O_TRUNC|os.O_RDWR, os.ModePerm)
- if err != nil {
- log.Fatal(err)
- }
- defer f.Close()
- if _, err = f.Write(content); err != nil {
- log.Fatal(err)
- }
- _ = f.Sync()
- log.Printf("Create file %d.log", count)
- }()
- time.Sleep(time.Second)
- }
- }()
- // Delete file after a few time
- //go func() {
- // var count int
- // for {
- // count++
- // time.AfterFunc(2*time.Second, func() {
- // if err := os.Remove(filepath.Join(*dir, strconv.Itoa(count) + ".log")); err != nil {
- // log.Fatal(err)
- // }
- // log.Printf("Remove file %d.log", count)
- // })
- // }
- //}()
- time.Sleep(time.Second*86400)
- }
|