Back
2022
# Low-Level Programming

Custom Linux Shell

A first-year school project: a Linux shell in C with custom prompt, command history, tab completion, and built-in commands.

~/Tags

CUnix System Programming

~/About

Fortytwo.sh is a school project developed during my first year of programming studies. This shell is implemented in C for Linux and allows execution of commands with support for pipes, redirections, and built-in commands like cd, echo, exit, setenv, and unsetenv. It features a custom prompt, command history navigable with arrow keys, tab completion, and globbing. The project follows strict error handling rules (exit codes, stderr), uses Makefile for compilation, and demonstrates fundamental Unix system programming skills.

~/Gallery

view
Custom Linux Shell 2
view

~/Key features

Command history with arrow navigation
Tab completion and globbing support
Built-in commands: cd, env, exit, alias, etc.
Pipes, redirections, background jobs, and error handling
Custom prompt with user and directory info

~/ Source code

View on GitHub