The Minishell
project is part of the 42 school curriculum, challenging students to create a simple Unix shell with basic functionalities. This project aims to improve understanding of processes, signals, file descriptors, and various system calls.
The Minishell
program is designed to provide a basic shell environment with features such as:
- Command execution: Executes commands entered by the user with the ability to handle simple commands and their options.
- Built-in commands: Supports built-in commands such as
cd
,echo
,env
,export
,pwd
,unset
andexit
. - Environment variables: Manages and modifies the shell's environment variables.
- Redirection and pipes: Handles input and output redirection, as well as piping between commands.
- Clone the project:
git clone https://github.com/seungwonme/minishell
- Navigate to the project directory:
cd minishell
- Compile the executable:
make
- Run the program:
./minishell
- Enter commands in the shell prompt:
$ ls -l
$ echo "Hello, Minishell!"
$ cd /path/to/directory
$ exit
- To clean up object files:
make clean
- To delete all build files:
make fclean
- To clean and rebuild the executable:
make re