My own implementation of a basic shell program. A refresher project.
is a simple implementation of a shell in C. It demonstrates the basics of how a shell works. That is: read, parse, fork, exec, and wait. So I think it's pretty cool. Since it's a simple implementation, it has some limitations.
- Commands must be on a single line.
- Arguments must be separated by whitespace.
- No quoting arguments or escaping whitespace.
- No piping or redirection.
- Only builtins are: cd, help, exit.
- Provide custom configuration options for prompts, set environment variables
- Extend built-in shell commands (pipes, history, re-direct, find etc)
- Redirect STDIN and STDOUT for the new processes by using < and >
- Place commands in the background with an & at the end of the command line
- Repeat a previously issued command by typing !number