package main import ( "fmt" se "git.swzry.com/ProjectNagae/saki-v0/engine" "github.com/urfave/cli/v2" ) func CmdRun(c *cli.Context) error { if c.NArg() != 1 { return fmt.Errorf("invalid arguments:\nUsage: sakish exec ") } cfg, err := LoadConfig(c) if err != nil { return fmt.Errorf("failed to load config:\n%w", err) } cfg.SetArgsSpecifiedItemsForExec(c) engine := se.NewEngine(cfg) err = engine.Prepare() InitBuiltins(engine) if err != nil { return fmt.Errorf("failed to prepare script engine:\n%w", err) } err = engine.RunFile(c.Args().Get(0)) if err != nil { return fmt.Errorf("failed to exec script:\n%w", err) } return nil }