- Basic commands
- Wildcards
- Redirections
- Pipes
- Background jobs
- Seperate commands with ';'
- Signal handling
- Cursor movement, tab, history with libreadline
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).
psh is available on AUR. You can install it using an AUR helper (e.g. paru):
paru -S psh- Clone this repo.
git clone https://github.com/proh14/psh.git
cd psh- Run
makeinside this repo's main directory.
make- go to build directory
cd build- run psh!
./pshOR to install you may run the command
make installthen restart your shell and run
pshIf your willing to contribute, I must say thank you :)
