/simple_shell

simple shell project

Primary LanguageC

Simple Shell in C This project aims to create a basic shell program in the C programming language. The objective is not just to develop a functional shell but also to delve into the fundamentals of programming, C language, engineering mindset, and teamwork.

Project Overview The simple shell program provides a command-line interface where a user can interact with the operating system by executing commands. Throughout the development process, we aim to cover the following aspects:

--Learning Objectives--

Basics of Programming: Understanding fundamental programming concepts such as variables, loops, functions, and control structures within the context of building a shell.

Basics of C: Exploring the C programming language's syntax, data types, memory management, pointers, and libraries necessary to implement a shell.

Engineering Mindset: Emphasizing problem-solving, algorithmic thinking, and efficient code design to create a functional shell that handles various commands and scenarios.

Group Working and Managing: Collaborating within a team, managing tasks, coordinating efforts, and utilizing version control (e.g., Git, GitHub) for effective project management.

--Features-- Command Execution: Ability to execute various system commands (e.g., ls, cd, mkdir) from the shell.

Input Parsing: Parsing user input to identify commands and arguments.

Error Handling: Implementing error handling for invalid commands or incorrect usage.

Basic Shell Functionalities: Supporting functionalities like redirection, piping, and background processes (if applicable within scope)