From f964301365c314b388314551f73ea69e9e51df47 Mon Sep 17 00:00:00 2001 From: horus_arch Date: Sun, 15 Mar 2015 20:51:57 +0100 Subject: Replace -vars flag with -args --- monoton.go | 57 -------------------------------------------------------- monotond.go | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 62 insertions(+), 57 deletions(-) delete mode 100644 monoton.go create mode 100644 monotond.go diff --git a/monoton.go b/monoton.go deleted file mode 100644 index f52c797..0000000 --- a/monoton.go +++ /dev/null @@ -1,57 +0,0 @@ -package main - -import ( - "flag" - "fmt" - "github.com/robfig/cron" - "log" - "os" - "os/exec" -) - -func main() { - time_f := flag.String("time", "1m", "Set the time interval.") - cmd_f := flag.String("cmd", "", "Execute the command.") - vars_f := flag.String("vars", "", "Command line options for the programm.") - - flag.Parse() - var ( - time, cmd, vars string - ) - - time = fmt.Sprintf("@every %s", *time_f) - cmd = fmt.Sprintf("%s", *cmd_f) - vars = fmt.Sprintf("%s", *vars_f) - - cmd, err := exec.LookPath(cmd) - if err != nil { - log.Printf("Executable (%s) neither found in PATH variable nor in working directory.\n", *cmd_f) - os.Exit(1) - } - - job := cron.New() - job.AddFunc(time, func() { - - if vars == "" { - c := exec.Command(cmd) - o, err := c.Output() - if err != nil { - log.Println(err) - } - fmt.Printf("%s", o) - } else { - c := exec.Command("bash", "-c", cmd+" "+vars) - o, err := c.Output() - if err != nil { - log.Println(err) - } - fmt.Printf("%s", o) - } - - }) - job.Start() - - for { - select {} - } -} diff --git a/monotond.go b/monotond.go new file mode 100644 index 0000000..d7ebc1e --- /dev/null +++ b/monotond.go @@ -0,0 +1,62 @@ +package main + +import ( + "flag" + "fmt" + "github.com/robfig/cron" + "log" + "os" + "os/exec" +) + +func main() { + time_f := flag.String("time", "1m", "Set the time interval.") + cmd_f := flag.String("cmd", "", "Execute the command.") + args_f := flag.String("args", "", "Command line options for the programm.") + + flag.Parse() + var ( + time, cmd, args string + ) + + time = fmt.Sprintf("@every %s", *time_f) + cmd = fmt.Sprintf("%s", *cmd_f) + args = fmt.Sprintf("%s", *args_f) + + cmd, err := exec.LookPath(cmd) + if err != nil { + cmd = fmt.Sprintf("%s", *cmd_f) + cmd, err = exec.LookPath("./" + cmd) + if err != nil { + log.Println(err) + log.Printf("Executable (%s) neither found in PATH variable nor in working directory.\n", *cmd_f) + os.Exit(1) + } + } + + job := cron.New() + job.AddFunc(time, func() { + + if args == "" { + c := exec.Command(cmd) + o, err := c.Output() + if err != nil { + log.Println(err) + } + fmt.Printf("%s", o) + } else { + c := exec.Command("bash", "-c", cmd+" "+args) + o, err := c.Output() + if err != nil { + log.Println(err) + } + fmt.Printf("%s", o) + } + + }) + job.Start() + + for { + select {} + } +} -- cgit v1.2.3