A minimalist shell implementation in C that supports basic input/output redirection and command piping.
- Command execution with support for paths
- Input redirection using
< - Output redirection using
> - Command piping using
| - Background process execution with
& - Built-in
quitcommand to exit the shell
# Build the shell
make
# Run the shell
./tsh
# Command line options
./tsh -h # Display help message
./tsh -v # Enable verbose mode
./tsh -p # Disable command prompt# Input redirection
❯ /bin/command < input.txt
# Output redirection
❯ /bin/command > output.txt
# Command piping
❯ /bin/command1 | /bin/command2
# Background execution
❯ /bin/command &- No support for environment variables
- Limited built-in commands (only
quitis implemented) - No command history or line editing
- No wildcard expansion or filename globbing
- No support for quoting or escaping special characters (except for single quotes)
- No job control features beyond basic background process support