GithubHelp home page GithubHelp logo

jish's Introduction

jish - A sh replica


Overview

jish is a UNIX command interpreter. It is a replica of the sh shell, built from scratch in C.

This project was developed as part of the Holberton School Low Level Systems specialization and is the second, more advanced version of the simple shell project completed in the Foundations year.

This project was written by J.I. Cruz, with assistance from Gabriel Abdul-Raheem.

Installation ๐Ÿ› 

Requirements

  • jish is only available for MacOS and Linux distributions.
  • make

Clone this repository to your local system. Use the following to compile the program and save the executable into a file named jish:

make

Usage

Interactive shell

$ ./jish
  • Run the executable file. Use the shell as if it were your normal shell. All commands-- including pipes, redirects, and aliases-- should work. That's it!
  • Type exit or Ctrl-D to exit jish.

Non-interactive mode

You can also use jish non-interactively. Use echo to pipe in a command to jish. The program will execute the inputted command(s) without re-prompting.

$ echo "ls" | ./jish

โœจ Features โœจ

jish can run any executables in the PATH. The following built-in commands are also available:

Built-in Use
exit [status] Exit shell with specified exit status
env Print list of current environment variables
setenv Set an environment variable
unsetenv Unset an environment variable
cd Change directories
history Print command history
help Display help for builtin commands
alias [ALIAS='COMMAND'] Alias a command as another. If no alias is given, print all aliases

Release History ๐Ÿงพ

This is version 2.0 of a previous Holberton School project.

Gabriel's Previous Shell

J.I.'s Previous Shell

Authors ๐Ÿ‘จ๐Ÿฝโ€๐Ÿ’ป

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.