Skip to content

My own CLI (command line interface) interpretation, almost like a bash ☺️

Notifications You must be signed in to change notification settings

awerebea/minishell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

minishell

21-School (Ecole42) 'minishell' project. Score 100 (without bonuses).

Description

This is the first team project of the school course. The goal of this project is to create your own CLI implementation.

minishell implements builtins functions:

  • echo with option ’-n’
  • cd with only a relative or absolute path
  • pwd without any options
  • export without any options
  • unset without any options
  • env without any options and any arguments
  • exit without any options

also it can run any other binary file, in case this file is located in PATH, no need to enter full path.

Commands separator ;, redirections (<, >, >>), pipelines (|), quotes ', ", termination signals (Ctrl+C, Ctrl+\) and EOF (End-of-file) marker (Ctrl+D) are also handled "like in bash".

Dependencies:

This project uses my own Libft library with functions from my previous Libft projects as a submodule. Therefore, to clone the complete project, use the additional --recursive flag.

git clone --recursive https://github.com/awerebea/minishell.git

Usage:

To build the library and program, at the root of this cloned repository, run:

make

and then to run the minishell, run:

./minishell

Try using single-line commands with bash syntax and enjoy! 😉

About

My own CLI (command line interface) interpretation, almost like a bash ☺️

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published