778e0c048115adedd2b99786f6512e78890e1b88
The builtins wasnt protected, now all data received is protected, the hashmap addition is protected and added functionality of env, export and unset (not implemented in this version). Added fixed details documentation in docs/builtins_fixes.md generated by codex and created tests/builtins_edge_cases.sh to test all the builtins to work correctly
ℹ️ About Project
The purpose of this project is to create a simple bash-like shell.
DETAILED INFO
For detailed info, refer to this project subject.
🚀 Getting Started
Prerequisites
- GCC compiler
- Make utility
- Unix-like system (Linux, macOS, WSL)
Install prerequisites
-
APT
sudo apt install build-essential libreadline-dev -
Pacman
sudo pacman -Sy base-devel readline-devel
🔧 Build
-
Clone the repository:
git clone https://github.com/sdevsantiago/minishell.git cd minishell -
Compile the project:
make # Full compilation -
Clean build files:
make clean # Remove object files
Available Make Targets
| Command | Description |
|---|---|
make |
Compiles all |
make all |
Same as make |
make clean |
Remove object files (*.o) |
make fclean |
Remove object files and binaries |
make re |
Clean and rebuild everything |
👨💻 Usage
Basic Usage
INSTRUCTIONS
📏 Norminette
The code strictly complies with 42's Norminette v4:
norminette *.c *.h
More info in the official Norminette repository.
🙇♂️ Special thanks
- lrcouto and ayogun for creating and publishing, respectively, the 42-project-badges repository.
- gcamerli for creating the 42unlicense repository.
⚖️ License
This work is published under the terms of 42 Unlicense. This means you are free to use, modify, and share this software.
Description
Languages
C
92.4%
Makefile
7.6%