/sesh

A (very) simple elegant shell in Go

Primary LanguageGoMIT LicenseMIT

sesh

sesh is a simple (read basic), elegant shell written in Go. It supports the following:

  • Aliasing
  • Piping and I/O redirection
  • Arrow keys up and down for history
  • Tab autocompletion

Apart from this, it has two custom builtins:

  • walk: walks through the directory specified as an argument recursively. Takes the current directory as input if no argument is specified.
  • show: lists the commands in the PATH having the given argument as its prefix. Lists all the commands in the PATH if no argument is specified.

Installation

go get -u github.com/anaskhan96/sesh

It can be run by invoking sesh from anywhere in the terminal.


This project was built under the course Unix Systems Programming at PES University.