Skip to content

This is a C based program, a command-line interpreter (shell), which takes commands typed into the CLI and passes them to the OS to perform.

License

Notifications You must be signed in to change notification settings

Atoms-x/C_Shell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C_Shell

C Shell

Table of Contents

Introduction

This is a C based program, a command-line interpreter (shell), which takes commands typed into the CLI and passes them to the OS to perform.

Getting Started

Prerequisites

Be sure to have a C compiler installed. Additionally, an IDE is recommended. Try following this guide for Visual Studio Code

image

Formatting

While not necessary to run the program, a batch file can be used with the program in batch mode. Commands should be given on each line, with multiple commands separated by a ';'. The formatting should look like this:

image

Running Batch Mode

Once you've executed the program, your CLI should present a prompt

image

Type "newshell" followed by a space and the name of the batch file (for batch mode)

image

Wait for the shell to load

image

Then watch as your commands are executed, line-by-line

image

Running Interactive Mode

Once you've executed the program, your CLI should present a prompt

image

Type "newshell" to enter into interactive mode

image

Wait for the shell to load

image

You will then be presented with a CLI terminal to enter commands. Your PWD (print working directory) will be displayed before and after each command.

image

Give a command

image

and watch the outcome

image

Additional Features

  • exit - An exit command can be given at any point, either by itself or as part of a chain of commands. No matter where it is placed, it will always be the last command executed

image

  • piping - Piping is supported using the '|' key to pipe outputs to new commands. However, only three commands (two pipes) are supported

image

Authors

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

  • Thank you to the many guides across the internet on C++

About

This is a C based program, a command-line interpreter (shell), which takes commands typed into the CLI and passes them to the OS to perform.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published