Here’s a professional and concise presentation version of your Minishell project:
Minishell is a custom-built, lightweight shell that replicates essential Bash functionalities, enabling users to execute commands, manage processes, and handle I/O redirection efficiently.
- Supports running applications as separate child processes using
fork(). - Implements sequential (
;) and parallel (&) execution for efficient command processing.
cd: Navigate the file system with relative and absolute paths.pwd: Display the current directory path.exit/quit: Terminate the shell session.
- Allows defining and using environment variables within commands.
- Supports variable inheritance from the parent shell.
- Piping (
|): Redirects output from one command to another. - Conditional Execution (
&&/||): Enables execution chains based on success/failure. - Execution Control (
;/&): Runs commands sequentially or in parallel.
- Redirects input (
<), output (>), and error streams (2>,&>). - Supports append mode for output redirection (
>>,2>>).
- Uses
fork()for process creation andexecvp()for command execution. - Implements anonymous pipes for inter-process communication.
- Utilizes file descriptors and
dup2()for efficient I/O redirection.
Minishell is a robust, efficient, and user-friendly shell implementation designed for seamless command execution and process management. 🚀