Skip to content

The objective of this project is for you to create a simple shell.

Notifications You must be signed in to change notification settings

tabreia/42cursus-minishell

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

42cursus-minishell (Subject)

Description

The objective of this project is for you to create a simple shell.

Features

  • Working history.
  • Search and launch the right executable (based on the PATH variable or using a relative or an absolute path).
  • Implemented redirections:
    • < redirect input.
    • > redirect output.
    • << should be given a delimiter, then reads the input until a line containing the delimiter is seen. However, it doesn't update the history!
    • >> redirect output in append mode.
  • Implemented pipes (| character).
  • Handles environment variables.
  • Handles $? which expands to the exit status of the most recently executed foreground pipeline.
  • Handles ctrl-C, ctrl-D and ctrl-.
  • In interactive mode:
    • ctrl-C displays a new prompt on a new line.
    • ctrl-D exits the shell.
    • ctrl-\ does nothing.
  • echo with option -n
  • cd with only a relative or absolute path
  • pwd with no options
  • export with no options
  • unset with no options
  • env with no options or arguments
  • exit with no options

About

The objective of this project is for you to create a simple shell.

Resources

Stars

Watchers

Forks

Languages

  • C 97.5%
  • Makefile 2.5%