53 lines
992 B
Go
53 lines
992 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
)
|
|
|
|
func main() {
|
|
if err := Run(os.Args[1:]...); err != nil {
|
|
os.Exit(1)
|
|
}
|
|
}
|
|
|
|
func Run(args ...string) error {
|
|
name, args := ParseCommandName(args)
|
|
|
|
// 从参数中解析出命令
|
|
switch name {
|
|
case "", "help":
|
|
return RunHelp(args...)
|
|
case "info":
|
|
return RunInfo(args...)
|
|
case "write":
|
|
return RunWrite(args...)
|
|
case "read":
|
|
return RunRead(args...)
|
|
case "columnwrite":
|
|
return RunColumnWrite(args...)
|
|
case "convert":
|
|
return RunConvert(args...)
|
|
case "verify":
|
|
return RunVerify(args...)
|
|
case "task":
|
|
return RunTask(args...)
|
|
case "target":
|
|
return RunTarget(args...)
|
|
case "bind":
|
|
return RunBind(args...)
|
|
case "grant":
|
|
return RunGrant(args...)
|
|
case "script":
|
|
return RunScript(args...)
|
|
case "exp":
|
|
return RunExp(args...)
|
|
case "daemon":
|
|
return RunDaemon(args...)
|
|
default:
|
|
err := fmt.Errorf(`unknown command "%v"`+"\n"+`Run 'saastool help' for usage`, name)
|
|
fmt.Fprintln(os.Stderr, err.Error())
|
|
return err
|
|
}
|
|
}
|