From 7110baf5dd384ad92409e05eb627b534e9e35c16 Mon Sep 17 00:00:00 2001 From: jet2tlf Date: Fri, 31 May 2024 01:55:01 -0300 Subject: pass 12st stage --- cmd/myshell/main.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'cmd/myshell') diff --git a/cmd/myshell/main.go b/cmd/myshell/main.go index 08db887..40de651 100644 --- a/cmd/myshell/main.go +++ b/cmd/myshell/main.go @@ -50,13 +50,23 @@ func main() { } func Cd(dir string) { + if len(dir) < 1 { + fmt.Println("path expected") + return + } + p := path.Clean(dir) - if !path.IsAbs(p) { + if !path.IsAbs(p) && dir != "~" { dir, _ := os.Getwd() p = path.Join(dir, p) } + if dir == "~" { + home, _ := os.UserHomeDir() + p = home + dir + } + err := os.Chdir(p) if err != nil { -- cgit v1.2.3