diff options
| author | Furkan Sahin <furkan-dev@proton.me> | 2021-07-21 19:12:45 -0500 |
|---|---|---|
| committer | Furkan Sahin <furkan-dev@proton.me> | 2021-07-21 19:12:45 -0500 |
| commit | 8a78b12f9eff397afeca0ebbba49bf5a2de18393 (patch) | |
| tree | 551ba5e0c7a94b5ac7cb506426715f84738a37c7 /main.go | |
| parent | ac341af2e683284a5e712f12bee314a20bed7734 (diff) | |
Directory structure for list cmd
Diffstat (limited to 'main.go')
| -rw-r--r-- | main.go | 47 |
1 files changed, 45 insertions, 2 deletions
@@ -1,7 +1,50 @@ package main -import "fmt" +import ( + "os" + "io" + "fmt" + "golang.furkistan.com/zfdiff/cmds" +) + +func printUsage(w io.Writer) { + fmt.Fprintf (w, "usage: %s command args ... \n", os.Args[0]) + fmt.Fprintln(w, " help ") + fmt.Fprintln(w, " version ") + fmt.Fprintln(w, " list [-paths|-p] <reference> ") + fmt.Fprintln(w, " diff [-walk|-w] <snap-ish>..<snap-ish> <reference> ") + fmt.Fprintln(w, " cat <snap-ish> <reference> ") + fmt.Fprintln(w, " overwrite [-backup|-b] <snap-ish> <reference> ") +} + +func dieUsage() { + printUsage(os.Stderr) + os.Exit(1) +} func main() { - fmt.Println("Hello"); + + if len(os.Args) < 2 { + dieUsage() + } + + subcommand := os.Args[1] + subargs := os.Args[2:] + + switch subcommand { + case "list": + cmd.List(subargs) + case "overwrite": + //overwrite(subargs) + case "cat": + //cmd.Cat(subargs) + case "diff": + //diff(subargs) + case "-h", "-help", "--help", "help": + printUsage(os.Stdout) + default: + fmt.Fprintf(os.Stderr, "unrecognized command %s\n", subcommand) + dieUsage() + } + } |
