From 1a90e3410a9bdaf606a6124930a0913c07b44c87 Mon Sep 17 00:00:00 2001 From: bpc2003 Date: Sat, 24 May 2025 13:32:57 -0400 Subject: Split builtin commands to separate modules --- cmds/cmds.go | 37 ++++++++++++++----------------------- 1 file changed, 14 insertions(+), 23 deletions(-) (limited to 'cmds/cmds.go') diff --git a/cmds/cmds.go b/cmds/cmds.go index f61f2b8..6d4d895 100644 --- a/cmds/cmds.go +++ b/cmds/cmds.go @@ -20,34 +20,25 @@ func Eval(cmd string) error { } break case "unset": - if len(args) == 1 || len(args) >= 3{ - return errors.New("unset: usage: name") + if len(args) == 1 || len(args) >= 3 { + return errors.New("usage: unset {name}") } os.Unsetenv(args[1]) break + case "set": + if len(args) > 1 { + set(args) + } else { + printenv() + } + break + case "exit": + if err := exit(args); err != nil { + return err + } + break case ":": return nil } return nil } - -func chDir(args []string) error { - var dir string - if len(args) == 1 { - dir, _ = os.UserHomeDir() - } else { - dir = args[1] - } - return os.Chdir(dir) -} - -func export(args []string) error { - if len(args) == 1 || len(args) >= 3 { - return errors.New("export: usage: name=value") - } - tmp := strings.Split(args[1], "=") - if len(tmp) != 2 { - return errors.New("export: usage: name=value") - } - return os.Setenv(tmp[0], tmp[1]) -} -- cgit v1.2.3