Skip to content

Zwhea/minishell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LE PITIT_SHELL

Aussi mignon qu’un vrai shell!


About


This project is focused on creating a minimalistic shell, which is a program that allows users to interact with their operating system by typing commands. By participating in this project, individuals can learn how to create a functional and efficient shell that performs tasks such as running programs, managing input and output, and handling errors.


Index


Project Objectives

The objectives of the project are:

  • Create a program that simulates a shell.
  • Handle errors and signals.
  • Handle environment variables.
  • Handle local variables.
  • Handle simple redirections (< and >).
  • Handle pipes (|).

Implemented Features

The implemented features in this project are:

  • Handling errors and signals.
  • Handling environment variables.
  • Handling local variables.
  • Handling simple redirections (< and >).
  • Handling advanced redirections (<< and >>).
  • Handling pipes (|).
  • Handling the "echo" command.
  • Handling the "cd" command.
  • Handling the "env" command.
  • Handling the "export" command.
  • Handling the "unset" command.
  • Handling the "exit" command.

Bonus Part :

  • Handling logical operators (&& and ||).
  • Handling globbing with * in the current repository.

Non-Implemented Features

The non-implemented features in this project are:

  • Handling the semi-colon command separator ;

Conclusion

The Minishell project at École 42 was an excellent opportunity to put into practice the programming skills acquired throughout the curriculum. Handling errors and signals, environment variables, local variables, redirections, and pipes was a very enriching experience and helped to better understand how a shell works.


Usage


Instructions

1. Compiling & Executing the program

To compile and execute the program, run:

$ make
$ ./minishell

3. Special Compiling Rules

To compile the program with fsanitize, run:

$ make debug
$ ./minishell

To compile the program with valgrind, run:

$ make leaks

or:

$ make leak_all

Useful Links

by bpoumeau & twang.

About

Aussi mignon qu'un vrai shell

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors