A modern shell implementation with advanced features and extensibility.
- Command chaining with operators (|, &&, ||)
- I/O redirection
- Background job control
- Command history
- Built-in commands
- System call profiling
- GCC (GNU Compiler Collection)
- CMake (>= 3.10)
- GNU Readline library
- POSIX-compliant system
- Python 3 (for documentation scripts)
- Doxygen (for API documentation)
- Clone the repository:
git clone https://github.com/tegaidogun/q-shell.git
cd q-shell
- Build the project:
make
- Install (optional):
sudo make install
To generate the documentation:
make docs
This will:
- Run the Python documentation script to generate markdown files
- Generate API documentation using Doxygen
- Output the documentation to
docs/html/
To run all tests:
make test
This will run the following test suites:
- Parser tests
- Shell core tests
- Profiler tests
- Input handling tests
- Tokenizer tests
This project is licensed under the MIT License. See the LICENSE file for details.