Simple shell for CS class.
You may ask, what does it do? It's a REPL that can run subprocesses and it handles a few "edge case" scenarios (SIGINT/Ctrl + C, etc).
⛄️ whoami
rei
⛄️ echo hello
hello
⛄️ a
🌲⛷ a: command not found
⛄️ b
🌲⛷ b: command not found
It currently implements cd
and exit
.
⛄️ pwd
/home/rei/snowshell
⛄️ cd ..
⛄️ pwd
/home/rei
⛄️ exit 1
Ctrl + C does nothing on the parent process (shell).
⛄️ ^C
Ctrl + D stops the shell altogether.
⛄️ ^D
❄❅❄❅ Goodbye and stay warm! ❄❅❄❅
Ctrl + C terminates child process.
⛄️ sleep 10
^C
⛄️