46 lines
812 B
Go
46 lines
812 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"log/slog"
|
|
"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 "write":
|
|
return RunWrite(args...)
|
|
case "read":
|
|
return RunRead(args...)
|
|
case "columnwrite":
|
|
return RunColumnWrite(args...)
|
|
case "convert":
|
|
return RunConvert(args...)
|
|
case "tasklist":
|
|
return RunTaskList(args...)
|
|
case "taskcancel":
|
|
return RunTaskCancel(args...)
|
|
case "taskdetail":
|
|
return RunTaskDetail(args...)
|
|
case "verify":
|
|
return RunVerify(args...)
|
|
default:
|
|
err := fmt.Errorf(`unknown command "%s"`+"\n"+`Run 'saastool help' for usage`, name)
|
|
slog.Warn(err.Error())
|
|
return err
|
|
}
|
|
}
|