Sfoglia il codice sorgente

make delay customizable.

Lucas Stadler 11 anni fa
parent
commit
7cfff120d1
1 ha cambiato i file con 5 aggiunte e 3 eliminazioni
  1. 5 3
      go/qst.go

+ 5 - 3
go/qst.go

38
	},
38
	},
39
}
39
}
40
40
41
var delay = flag.Duration("delay", 1*time.Second, "time to wait until restart")
42
41
func main() {
43
func main() {
42
	log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
44
	log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
43
45
54
		os.Exit(1)
56
		os.Exit(1)
55
	}
57
	}
56
58
57
	file := os.Args[1]
59
	file := args[0]
58
	if !isFile(file) {
60
	if !isFile(file) {
59
		fmt.Fprintf(os.Stderr, "Error: %s is not a file.\n", file)
61
		fmt.Fprintf(os.Stderr, "Error: %s is not a file.\n", file)
60
		os.Exit(1)
62
		os.Exit(1)
119
			r.cmd = exec.Command("sh", "-c", r.shellCmd)
121
			r.cmd = exec.Command("sh", "-c", r.shellCmd)
120
			r.cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
122
			r.cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
121
			err := r.cmd.Run()
123
			err := r.cmd.Run()
122
			log.Printf("%s finished: %s", r.shellCmd, err)
124
			log.Printf("%s finished: %s, restarting in %s", r.shellCmd, err, delay)
123
125
124
			time.Sleep(1 * time.Second)
126
			time.Sleep(*delay)
125
			if !r.restart {
127
			if !r.restart {
126
				break
128
				break
127
			}
129
			}