A simple Unix shell written in C. CShell-CShore is a lightweight command-line shell that reads user input, tokenizes commands, and executes basic shell operations.
- Reads and parses user input commands.
- Supports quoted arguments (e.g.,
"ls -la"is treated as a single argument). - Implements a simple command-line interface with a working directory prompt.
- Debug mode for verbose output (
--debugflag). - Has command history accessible by using arrow up or down keys.
- Persistent command history saved to
~/.cshell_history. - Auto-completion for file names on
Tab, only the last argument is sent for auto-completion and then concatenated with the main buffer.
- Clone the repository:
git clone https://github.com/soham004/Cshell-Cshore.git
cd CShell-CShore- Compile the shell:
makeRun the shell:
./cshellRun in debug mode:
./cshell --debugThe shell will display the current working directory followed by > as a prompt, allowing you to enter commands.
- ✔️ Add support for executing system commands via
shell_execute. - ✔️ Support built-in commands like
cd,exit, etc. - ✔️ Implement history.
- ✔️ Implement persistent history.
- ✔️ Add support for auto completion for file names on
Tab. - Add coloured output for better readability.
This project is licensed under the Unlicense.