π Dive into the Fundamentals of Shell Programming
Minishell is a simplified π§ Unix shell, implemented in C, designed for π students to deepen their understanding of command-line operations and shell development. It emphasizes core Unix principles, providing hands-on experience in building a functional shell.
- π₯οΈ Interactive Command Prompt: Execute commands like in a typical shell.
- π Built-in Commands: Includes essential commands such as
echo,cd,pwd,export,unset,env, andexit. - π Redirection & Piping: Manage input/output with redirections (
<,>>>,<<) and pipe commands (|). - πΏ Environment Variable Handling: Define, modify, and use environment variables effectively.
β οΈ Signal Handling: Properly handle signals likectrl-C(interrupt),ctrl-D(EOF), andctrl-\.- π°οΈ Command History: Access and reuse previously executed commands.
Minishell provides a practical way for π students to learn the mechanics of a π§ Unix shell. It covers essential concepts such as βοΈ process management, ποΈ file descriptor handling,
To get started with Minishell, clone the π repository and compile the code using the following commands:
git clone git@github.com:minishell-2024/minishell.git
cd minishell
make
./minishellMinishell is part of the 42 School curriculum, focusing on reimplementing essential features of Unix-like shells to build proficiency in system programming and the C language. The project encourages π students to learn by doing, gaining a deep understanding of every layer of shell functionality.
Contributions are encouraged to further improve Minishell or expand its features.
This project is developed for educational purposes as part of the 42 School curriculum.