Skip to content

Elfergouchyassine/minishell1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MiniShell

This project is an implementation of the Minishell in Java. The solution aims to provide a functional command-line interpreter that allows users to execute commands and manage processes.

The report of this project : Report

List of command

  • mkdir : Creates a new directory with the specified name.
  • ls : Lists files and directories.
  • touch : Creates a new empty file or updates the timestamp of an existing file.
  • echo : Displays a line of text or variables.
  • pwd : Prints the current working directory.
  • cd : Changes the current directory.
  • for : Loops through a set of values and executes commands.
  • cat : Displays the contents of a file.
  • grep : Searches for a specific pattern in files.

User Manual

the project contains the following files:

Table of Contents

Installation

Firstly, you will need to install java with the commands sudo apt update and sudo apt install default-jdk.

Secondly, you will also need to install git so you can clone the ripository, you can do it using the commands sudo apt update and sudo apt install git

finally install the command make so you can use the Makefile to compile, you can use the commands sudo apt updateand sudo apt install make

Clone the repository:

git clone https://github.com/Elfergouchyassine/minishell1.git

Enter the repository with the commande cd src

Execution

When all the files are cloned from the github repository, you can use the Makefile to compile and run the program:

To compile the program use the command make the compiler will recognize the Makefile and execute it.

make

img.png

To run the program use the command make run.

make run

img_1.png

When you finish using the command-line interpreter, you will need to clean all the files that had been used with make clean :

make clean

img_2.png

⚠ Important: The Makefile provided in this repository is designed to only work on Unix-like operating systems.

Releases

No releases published

Packages

No packages published