Skip to content

gu4re/CSH

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CSH v1.0.0 terminal-icon

A simplified version of bash using C!
If you need a graphical tutorial for installation, click here!

The purpose of this project is to provide a basic understanding of how a shell works, how processes and subprocesses comunicate with the OS System and how commands are executed by a shell. Some commands are still emulating the behaviour of UNIX commands such as cd and umask. Probably they will be changed in a future release.

DOWNLOAD git-icon

To download this project, you can either clone the repository using git clone command to get a copy of the project:

git clone https://github.com/gu4re/CSH.git "your-folder-destination"

download-zip-button

Note: after cloning the repo make sure to evently use 'git pull' command to get future versions of the project in your local folder:

git pull

Or, you can download the repository as a ZIP file by clicking on the green "Code" button at the top of the repository and selecting Download ZIP.

COMPILE & RUN code-icon

It is important to note that when compiling the code using gcc or any other compatible C compiler, the appropriate library for your system architecture must be included. This library can be found in the _libraries directory of this repo (either "libparser_x86.a" or "libparser_x64.a"). Note that there is currently no library available for ARM architecture.

download-zip-button

Example with gcc compiler using csh_en.c file in a x64 architecture. Make sure you execute this command at main-branch level i.e as the side photo:

cd "your-folder-destination"
gcc "_code/csh_en.c" "_libraries/libparser_x64.a" -o "name-of-executable" -Wall -Wextra -Wshadow
# Comment: "name-of-executable" can be anything, usually used the same name as the source file e.g "csh_en"

After compiling the code, gcc will create an executable file in the current directory. To run and test CSH, just use in terminal the run "./" expression:

./csh_en
# Comment: Following the sample above

ISSUES issues-icon

Any issue can be reported here including as header "CSH ISSUE" and I will try to solve it as soon as posible!

LICENSE license-icon

This project is licensed under the open source Apache License 2.0. Please make sure that you comply with the terms of this license when using the code in this repository.