Directory commands
The skeleton code for your shell has a dispatcher for “built-in” commands. Every shell needs to support a number of built-in commands, which are functions in the shell itself, not external programs. For example, the exit
command needs to be implemented as a built-in command, because it exits the shell itself. So far, the only two built-ins supported are ?
, which brings up the help menu, and exit
, which exits the shell.
Add a new built-in pwd
that prints the current working directory to standard output. Then, add a new built-in cd
that takes one argument, a directory path, and changes the current working directory to that directory. You may find the syscalls chdir
and getcwd
helpful. Check out man pages for usage details.