From 02062f0cf84e1cb7fb294de54b0c00db6323c529 Mon Sep 17 00:00:00 2001 From: Nathan Reiner Date: Thu, 15 Dec 2022 21:17:41 +0100 Subject: add 'cd' to smash --- smash/builtin.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'smash/builtin.c') diff --git a/smash/builtin.c b/smash/builtin.c index ad9c839..63a4013 100644 --- a/smash/builtin.c +++ b/smash/builtin.c @@ -3,6 +3,7 @@ #include "../lib/sys/exit.h" #include "../lib/cstr/cstr.h" #include "../lib/sys/io.h" +#include "../lib/sys/chdir.h" u64 __find_builtin_function_by_name(const char *name); @@ -30,7 +31,12 @@ int __builtin_fn_exit(int argc, const char **argv) int __builtin_fn_cd(int argc, const char **argv) { - /* TODO: Implement */ + if (argc != 2) { + write(STDOUT_FD, "path missing\n", 9); + return -1; + } + + return chdir(argv[1]); } int __builtin_fn_help(int argc, const char **argv) -- cgit v1.2.3-70-g09d2