Skip to content

Latest commit

 

History

History
78 lines (63 loc) · 1.97 KB

README.md

File metadata and controls

78 lines (63 loc) · 1.97 KB


logo
psh

A small and minimal shell

Preview🙈:

asciicast

Features:

  1. Basic commands
  2. Wildcards
  3. Redirections
  4. Pipes
  5. Background jobs
  6. Seperate commands with ';'
  7. Signal handling
  8. Cursor movement, tab, history with libreadline

Motivation:

I did this mostly for the sake of learning and fun! I always wanted to have my own small shell that I can run everywhere and I can add custom features to. I am aiming to implement some other features in this later like aliasing, environmental variables and some basic if/else logics :). This project can also be seen as learning resource for people who want to learn how to make their own shell(I might write an article on this topic).

How to install⬇️:

Arch Linux

psh is available on AUR. You can install it using an AUR helper (e.g. paru):

paru -S psh

Manually

  1. Clone this repo.
git clone https://github.com/proh14/psh.git
cd psh
  1. Run make inside this repo's main directory.
make
  1. go to build directory
cd build
  1. run psh!
./psh

OR to install you may run the command

make install

then restart your shell and run

psh

Contributions💖:

If your willing to contribute, I must say thank you :)

Thank you Stargazers⭐:

Stargazers repo roster for @proh14/psh

Thank you Forkers🍴:

Forkers repo roster for @proh14/psh

Inspired by:

  1. mysh
  2. ash(netbsd)